Java Programlama için yeni bir türdeyim ve aşağıdaki resimde görüldüğü gibi iki düğme ve bir metin alanı içeren bir pencere oluşturmaya çalışıyorum. Karşılaştığım sorun, bileşenleri yerleştiriyordu. GridLayout
kullanmayı ve pencereyi 9 satır ve 16 hücreye ayırmayı denedim, ancak bileşenlerin bir hücreden daha fazlasını işgal edemediğini fark ettim. GridBagLayout
'u kullanmam gerektiğini biliyorum ama tam olarak ne olduğunu bilmiyorum. Yardım takdir edilecektir. :)Bileşenler GridBagLayout ile nasıl konumlandırılır?
6
A
cevap
7
Çok sayıda seçeneğiniz var. Yerine birinde bütün bileşen düzeni çalışmakla, ... Her bölümün ayrı ayrı gereksinimlerine ayrı bölmeler ve odakta UI bölümleri düzeni tarafından bir bileşik düzeni, kullanmayı deneyin
public class TestLayout11 {
public static void main(String[] args) {
new TestLayout11();
}
public TestLayout11() {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException ex) {
} catch (InstantiationException ex) {
} catch (IllegalAccessException ex) {
} catch (UnsupportedLookAndFeelException ex) {
}
JFrame frame = new JFrame("Test");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(new BorderLayout());
frame.add(new ExamplePane());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
});
}
protected class ExamplePane extends JPanel {
public ExamplePane() {
setLayout(new GridBagLayout());
JPanel buttonPane = new JPanel(new GridBagLayout());
JButton btnOkay = new JButton("Ok");
JButton btnCancel = new JButton("Cancel");
JTextArea textArea = new JTextArea(5, 20);
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = 0;
gbc.gridy = 0;
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.anchor = GridBagConstraints.CENTER;
buttonPane.add(btnOkay, gbc);
gbc.gridy++;
gbc.insets = new Insets(50, 0, 0, 0);
buttonPane.add(btnCancel, gbc);
gbc.gridx = 0;
gbc.gridy = 0;
gbc.insets = new Insets(100, 100, 100, 100);
add(buttonPane, gbc);
gbc.insets = new Insets(150, 100, 150, 100);
gbc.gridx++;
gbc.gridy = 0;
gbc.fill = GridBagConstraints.BOTH;
add(new JScrollPane(textArea), gbc);
}
}
}
İlgili konular
- 1. GridBagLayout ile panelleri hizalama
- 2. Gridbaglayout ile Swing ekran tablosu yapısı
- 3. Bileşenler Kale 3.0 ile nasıl kaldırılır?
- 4. Dikey merkez nasıl konumlandırılır?
- 5. Android'de StaticLayout nasıl konumlandırılır?
- 6. Düğmeler rastgele nasıl konumlandırılır?
- 7. MediaController nasıl yeniden konumlandırılır?
- 8. UIView nasıl konumlandırılır?
- 9. iframe'ler nasıl konumlandırılır
- 10. java GridBagLayout anchor
- 11. Etiketler çevre etrafında nasıl konumlandırılır?
- 12. gridBagLayout hizalayarak değil görselleri doğru
- 13. Bu bileşenler JPanel'de nasıl ayarlanır?
- 14. Etkin_link_to ile sınırın doğrudan etkin bağlantısı nasıl konumlandırılır? Raylar 4
- 15. Alt çizgiler yatay olarak birbirinin üzerinde nokta ile nasıl konumlandırılır?
- 16. React'ta kontrol edilen bileşenler ve kontrolsüz bileşenler nelerdir?
- 17. Angular2 bağımlı bileşenler
- 18. Stilli bileşenler temaProvider
- 19. Venn3: Daireler ve etiketler nasıl yeniden konumlandırılır?
- 20. Öğütücü başka bir görünümde nasıl konumlandırılır?
- 21. Sayfanın kenarına karşı html listesi nasıl konumlandırılır?
- 22. Radyal degrade arka planı nasıl konumlandırılır
- 23. JavaFX: Bir bileşen/düğüm nasıl konumlandırılır?
- 24. Genel bileşenler vue yönlendiriciyle nasıl kaydedilir
- 25. Ember. Bileşenler arası iletişim. Breadcrumbs
- 26. Ayrıntı .JSX dosyasındaki bileşenler başvuru
- 27. Renk Bireysel Bileşenler winform'larda ComboBox?
- 28. Yer tutucu metni UISearchBar iOS 11'de nasıl konumlandırılır
- 29. Bazı elemanlar tablonun üstünde ve bazılarında alt kısımda nasıl konumlandırılır?
- 30. Pandalar veri çerçevesini kullanarak temel bileşenler analizi
tüm JComponents'ler konteyner ile yeniden boyutlandırılabilir veya ei değil – mKorbel