target
MainFraim にメインの JPanelと、パネルcurrentView
に追加された別の JPanel があります。パネルには、リスナー付きのボタンが含まれています。これらのリスナーは、以下に示すように、パネルのコンテンツを変更すると想定されます。target
target
curretView
private JPanel currentPanel;
public void setView(String type) {
if (type.equals("overall")) {
this.currentPanel = getOverallView();
frame.setTitle("BookingCalendar - Overall View");
frame.validate();
} else if (type.equals("guest")) {
this.currentPanel = getGuestView();
frame.setTitle("BookingCalendar - Room View");
frame.validate();
} else if (type.equals("room")) {
currentPanel.removeAll();
this.currentPanel = getRoomView();
frame.setTitle("BookingCalendar - Guest View");
frame.validate();
}
}
私が呼び出すすべてのメソッドは、呼び出されるたびに新しい JPanel を返します。
JPanel currentPanel = new JPanel(new MigLayout("","20 [grow, fill] 10 [grow, fill] 20", "20 [] 10 [] 20"))
問題は、これらのメソッドを呼び出すたびに、パネルが変更されないことです。常に同じままです (デフォルト: getOverallView()
)
フレームとパネルの両方で無効化、検証、再描画を試みましたが、変更はありません。パネルの内容を完全に変更するために私が何をする必要があるかについて、誰かが詳しく教えてください。currentView