Netbeans Form içinde Form – JinternalFrame to a JDesktopPane

Java ile Netbeans IDE üzerinde, MDIForm içerisinde form görüntüleme.

Aşağıdaki resimdeki gibi, yeni bir proje oluşturuyoruz.

new-project-java

Next Sonrası resimde görüldüğü gibi projemize isim(mdifrm) veriyoruz ve klasörü belirledikten sonra finish diyoruz.

Ardından ilk iş, resimde görüldüğü gibi Create Main Class seçeneğini kaldırmadıysak, Source Package içerisinde oluşturulmuş olan mdifm.java dosyasını siliyoruz. mdifrm paket resmine sağ tıklayıp, frm_mdi ismiyle, New->Jframe Form ekliyoruz. Bu ana formumuz olacak.jpanel-form

Tıkladıktan sonra açılan pencerede ismi verip finish diyoruz.

jpanel-form-finish

Soldaki Projects menüsünde, frm_mdi.java çift tıklıyoruz. Açılan panelde, üst taraftan Design‘e tıklıyoruz. 1 Adet menu bar ve menu ekleyeceğiz. Aşağıdaki resimde görüldüğü gibi Menu Bar butonunu seçip, form üzerine sürükleyip bırakacağız.

add-menu-bar

Şimdi 1 adet de Desktop Pane ekleyeceğiz.  Diğer formları, bu panel içerisine çağıracağız.

add-desktop-pane

Eklediğimiz paneli, boyutlandırma kutularıyla büyütüp, form ebadında genişletiyoruz(böylece tüm formu kaplayacak)

Şimdi eklemiş olduğumuz menu‘ye item ekleyeceğiz(formu çağıracığımız). “Edit” yazısına, Mouse sağ tıklayıp, resimdeki gibi Edit Text diyeceğiz, yeni bir isim vereceğiz. Örnek uygulamada, “Forms” ismini verdim.

menu-bar-edit-text

Şimdi ilgili menüye item eklemek için, yine sağ tıklayıp, resimde görüldüğü gibi, açılan pencerede Menu Item ekleyeceğiz. Eklediğimizde isimlendirmek için yine yukarıdaki gibi, item ismine sağ tıklayıp Edit Text diyebilirsiniz. Uygulamada ben item ismini, Form1 olarak belirledim.

menu-bar-add-item

 

Şimdi 1 adet JinternalFrame Form ekleyeceğiz. Ugulamada ismini Form1 olarak belirledim.

add-jinternal-frame-form

Şimdi frm_mdi.java çift tıklayıp, source kısmında resimdeki yeri buluyoruz. Ve frm1 adında bir değişken ekliyoruz.

add-form1-variable

Sonra menüde, event kısmına kod girebilmek için, ilgili item üzerine(üst resmlerde menüdeki form1 item) sağ tıklayıp, aşağıda, resimdeki yolu takip ediyoruz.

right-click-action

İlgili kısımda ve resimdeki kod bloğunda olduğu gibi, yukarıda oluşturduğumuz formu(form1.java), MDIForm içindeki Dektop pane içerisine çağıracağız. İlgili Kodlar yazıyla;

    private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // TODO add your handling code here:
        if (frm1 == null || frm1.isClosed()) {
            frm1 = new form1();
            // center form - formu ortala
            frm1.setLocation(this.getWidth()/2 - frm1.getWidth()/2, 
                    this.getHeight()/2 - frm1.getHeight()/2);
            jDesktopPane1.add(frm1);          
            frm1.setVisible(true);
        }
    }

MDIFormumuzun açılışta maximum boyutlarda açılmasını istiyorsak aşağıda resimde  olduğu gibi, run() fonksiyonu içerisine kod yazacağız.

mdi-maximized

Kodlar yazıyla;

java.awt.EventQueue.invokeLater(new Runnable() {
	public void run() {
		// maxsimized - max boyutla ac
		frm_mdi f_mdi = new frm_mdi();
		f_mdi.setExtendedState(MAXIMIZED_BOTH);
		f_mdi.setVisible(true);
		//new frm_mdi().setVisible(true);
	}
});

Son olarak projemizi çalıştıracağız. Ilk açılıştaki varsayılan java dosyasını sildiğimiz için, run tuşuna bastığımızda bir uyarı mesajıyla karşılaşırız, varsayılan açılış dosyasını, mesajda belirttiği gibi seçip, onaylamalıyız. ya da resimde görüldüğü gibi, pakete sağ tıklayıp, properties seçip, açılan ekranda, main class’ı resimde görüldüğü gibi belirleyebiliriz.

project-properties-run

Çalıştırdığımızda, menüdeki Forms->form1 tıkladığımızda formumuz açılmış olacak.

proje-run

 

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir