Swingで遊んで、GridLayoutが10行10列として定義されているときに、次のコードが3つの列を持つように見える理由を疑問に思っていますか?Java - 珍しいGridLayoutの振る舞い
誰でもこの異常な動作について説明し、提供されているコードでこれが起こる原因は何ですか?
public class MyGrid {
public static void main (String[] args) {
JFrame frame = new JFrame();
Container container = frame.getContentPane();
container.setLayout(new GridLayout(10,10));
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
if (i>=j) {
container.add(new JButton("X"));
} else {
container.add(new JLabel("Y"));
}
}
}
frame.setSize(500,500);
frame.setVisible(true);
}
}
1)GUIの構築/更新はEDTで行う必要があります。 BNI。 2)そのコードはコンテナに好ましいサイズを設定し、ボタン/ラベルインスタンスを「正方形」にする必要があります。 –