さて、どうやら私は最近NetBeansGUIBuilderを使用して怠惰になっています。JLabelとJTextFieldをウィンドウに追加すると、JFrame自体のサイズが変更されません。私は次のことを示すためにSSCCEを作成しました。
package swingdemo;
import java.awt.Container;
import java.awt.FlowLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class SwingDemo {
public static void main(String[] args) {
JFrame frame = new JFrame("Swing Demo");
Container contentPane = frame.getContentPane();
JLabel label = new JLabel("Demo Label");
JTextField textField = new JTextField();
contentPane.setLayout(new FlowLayout());
contentPane.add(label);
contentPane.add(textField);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
ここで何が欠けていますか?私はそれがかなり単純なものであることを知っています。JLabelとJTextFieldの両方でsetPreferredSize()を呼び出す必要がありますか?