我正在使用JDialog为Java项目创建自定义对话框。我目前在布局方面遇到问题。似乎我添加到对话框中的每个JLabel都超过了现有对话框。我需要添加某种JPanel吗?

我似乎对尺寸也有疑问。我也将其设置为500x500,但为什么它仅与文本宽度一样大?

JDialog processData = new JDialog(f1, "TItle goes here");
JLabel centretext = new JLabel("Look at me im centre!");
JLabel leftext = new JLabel("LOok at me im left");
JLabel righttext = new JLabel("LOok at me im right");
processData.setVisible(true);
processData.add(centretext);
processData.add(lefttext);
processData.add(rightext);
processData.toFront();
processData.setSize(500,500);
processData.setLocation(500,500);
processData.pack();

最佳答案

JDialog默认情况下使用BorderLayout,这意味着它将仅在五个可用位置中的任何一个显示单个组件,而所有其他位置都将被忽略。

考虑使用其他布局管理器。有关更多详细信息,请参见Laying Out Components Within a Container

关于java - JDialog布局问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28868086/

10-10 21:49