我想添加JTable到JPanel其布局中null. JPanel包含其他组件.我必须添加JTable适当的位置.
没有空白区域的GUI显得"拥挤".如何在不借助明确设置组件的位置或大小的情况下提供空白区域?
当用户单击JDialog上的按钮时,我无法将JComponents添加到JDialog.基本上我希望它看起来像这样:

然后,当用户点击"添加新字段"时,我希望它看起来像这样:

我似乎无法获得添加新JLabel或JTextField的对话框.谁能指出我正确的方向?
编辑:这是"添加新字段"按钮的操作(现在只是尝试标签).
@Action
public void addNewField()
{
Container contentPane = getContentPane();
JLabel label = new JLabel ("welkom");
contentPane.add(label, BorderLayout.CENTER);
}
Run Code Online (Sandbox Code Playgroud)
解决方案:
我使用了mre的解决方案并让它工作.这是我的最终功能:
@Action
public void addNewField()
{
System.out.println("New Field...");
Container contentPane = getContentPane();
JLabel label = new JLabel ("welcome");
label.setBounds(10,10,100,10); //some random value that I know is in my dialog
contentPane.add(label);
contentPane.validate();
contentPane.repaint();
this.pack();
}
Run Code Online (Sandbox Code Playgroud)
我的另一个问题是我在NetBeans中使用"自由设计"布局,这意味着我的标签可能处于一些奇怪的位置而不是在我的对话框中(只是一个猜测).我解决了这个问题,label.setBounds()以便它显示我想要的确切位置.
我所希望做的是一个类似的原则,以添加附件的电子邮件,你可以点击一个按钮和一个新的浏览框将打开上升单独的附件,你可以拥有的数量.
我是新人,所以如果有人能指出我的榜样?
我有一个Swing窗口,其中包含一个按钮,一个文本框和一个JLabel名为flag 的按钮.根据我点击按钮后的输入,标签应该从标志变为某个值.
如何在同一个窗口中实现这一点?