2009-09-30 17 views
6

. Net. Denetimleri, formla dinamik olarak yeniden boyutlandırmak için kullanılan birleştirme adı verilen bir denetim vardır. Bir kontrol bir forma bağlandığında ve form yeniden boyutlandırıldığında, kontrol, kontrol ve ankraj konumları arasındaki mesafeyi korur.java'da Bağlama ve Yerleştirme Denetimleri Salındırma

Soruma göre, java'da .net'de ankraj ile aynı işlevi gören herhangi bir denetim var.
Örnek olarak bir metin alanını seçip panele koyup doğru şekilde yeniden boyutlandırdım. Pencerenin boyutunu (JFrame) değiştirdiğimde veya pencereyi en üst düzeye çıkardığımda, metin alanı daha önce olduğu gibi aynı mesafeyi korumaz. Netbeans kullanıyorum ve sorumu cevaplayan pallete yöneticisinde herhangi bir mülk buldum. Lütfen bana bir örnek veya bazı bağlantılar ile açıklayın.

cevap

4

Java Swing boyutu ve görsel bileşenlerinin konumunuzu yönetmek için Düzen Yöneticileri kullanır. Bu, bu Düzen yöneticileri nasıl kullanılacağına dair resmi java öğretici geçerli:

http://java.sun.com/docs/books/tutorial/uiswing/layout/using.html

Ve

FlowLayout (varsayılan) en yaygın düzen yöneticileri kısa bir açıklama vardır: sola bileşenleri elden sağa ve aşağıya doğru.

BorderLayout: Konteyneri KUZEY, GÜNEY, BATI, DOĞU Merkez MERKEZİ'ne böler. Pozisyona göre sadece bir bileşen. Kenardaki bileşenler genişler ve ortadaki bileşende kullanılabilir alan

GridLayout öğesinden yararlanır: siz yöneticiyi, kılavuzun kaç tane satır ve cols'e sahip olacağını belirten başlangıçta başlatırsınız. Her bir hücre aynı boyuta sahip ve sol üstteki hücreye bileşen eklemeye başlıyorsunuz.

GridBagLayout: EN ince taneli mizanpaj yöneticisi, bununla her şeyi yapabilirsiniz, ancak biraz karmaşık, bunun için java belgelerine bakın.

NullLayout (konteynır düzeni düzenleyicisini geçersiz kıldığınızda): düzen yöneticisi yok, bileşenler bileşenlerde gösterilecek konum ve boyut özelliklerini kullanır.

Ve tabi ki, diğer kaplarda bulunan kaplar ebeveynlerinden farklı bir düzen yöneticisi kullanabilir. Yer yöneticilerini birleştirmek öğrenmek zor bir sanattır.

1

Netbeans, Matisse GUI oluşturucusunu kullanarak GUI'leri tasarlamak için dahili desteğe sahiptir. Bu, VB gibi ortamlarda bulunan & biçim stili form tasarımına ulaşacağınız en yakın yoldur.

Bir flash demo var here.

(sizin geliştirme ekibi üyelerinin hepsinin kullanarak NetBeans, özellikle, hızla unmaintainable olur bir sürü kod autogenerates olarak gerçi Şahsen ben bu yaklaşımın büyük bir hayranı değilim.)

0

Eğer bıraktıysanız Sadece tek bir kontrol daha sonra java.awt.BorderLayout kullanarak ve kontrolünüzü BorderLayout.CENTER ile eklemek en iyi seçimdir.

Birden çok denetime sahipseniz, java.awt.GridBagLayout'u kullanmanız gerekir.

gridBagConstraints.anchor = GridBagConstraints.NORTHWEST; 
gridBagConstraints.fill = GridBagConstraints.BOTH; 
gridBagConstraints.weightx = 1; 
gridBagConstraints.weighty = 1; 

yeniden boyutunu istediğiniz denetimi eklerken:

Aşağıdaki ayarlamanız gerekir.

bu konuda öğretici var burada:

http://java.sun.com/docs/books/tutorial/uiswing/layout/gridbag.html

İlgili konular