ved*_*ran 1 java swing jpanel jframe
我target在MainFraim中有一个主JPanel ,另一个currentViewJPanel添加到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();
}
}
Run Code Online (Sandbox Code Playgroud)
我调用的每个方法每次调用时都会返回新的JPanel:
JPanel currentPanel = new JPanel(new MigLayout("","20 [grow, fill] 10 [grow, fill] 20", "20 [] 10 [] 20"))
Run Code Online (Sandbox Code Playgroud)
问题是,每当我调用这些方法时,面板都不会改变.它总是保持不变(默认:getOverallView())
我尝试过无效,验证,重绘两个框架以及面板,但没有发生任何变化.有人可以详细说明我需要做什么才能完全改变面板的内容currentView
| 归档时间: |
|
| 查看次数: |
1402 次 |
| 最近记录: |