1 つのパネルに 2 つのパネルを追加しようとしています。問題は、最初または 2 番目のものを単独で追加すると、それらがパネルに表示されることです。しかし、両方を追加すると (//add(panel2, BorderLayout.SOUTH); をコメント外に)、それらのいずれも表示されません。Weblabel("Test") は常に表示されています。現在、両方のパネルに onclick メソッドがあり、それらが表示されない場合 (両方が追加されている場合)、パネルがあるはずの場所をクリックすると、onclick は引き続き機能します。
私はすでに他のレイアウトマネージャーを試しましたが、成功しませんでした。この問題がどこから来るのか誰にもわかりませんか?
setLayout(new BorderLayout());
add(panel1,BorderLayout.NORTH);
add(new WebLabel("Test"), BorderLayout.CENTER);
//add(panel2,BorderLayout.SOUTH);
コンストラクターで両方のパネルを初期化します。
public MultipleFloorPlanEntityPanel(int xCoordinate, int yCoordinate, FloorPlanEntityPanel panel1, FloorPlanEntityPanel panel2){
this.xCoordinate = xCoordinate;
this.yCoordinate = yCoordinate;
this.panel1 = panel1;
this.panel2 = panel2;
layoutComponents();
}
解決済み:余分なパネルを再初期化し、それが機能しました:)