私はswingでアプリケーションを作成しています。私は20以上のjpanelを持っています。表示したいjpanelを表示したい:
例:
WelcomePanel welcomePanel = new WelcomePanel();
BindingDetailsPanel bindingDetailsPanel = new BindingDetailsPanel();
FooterMainPanel footerMainPanel = new FooterMainPanel();
KeyMessageSetupPanel keyMessageSetupPanel = new KeyMessageSetupPanel();
SMSCSetupPanel sMSCSetupPanel = new SMSCSetupPanel();
LiveProcessorDetailsPanel runTimePanel = new LiveProcessorDetailsPanel();
RuntTimeInformationPanel welcomePanel=new RuntTimeInformationPanel();
BlockedSmscDetailsPanel blockedSmscDetailsPanel = new BlockedSmscDetailsPanel();
メインjFrameで上記のパネルのオブジェクトを作成しています。正常に動作しています
理由:
public mainFrame(){
requestResponseReportPanel.setVisible(false);
keyMessageSetupPanel.setVisible(false);
sMSCSetupPanel.setVisible(false);
welcomePanel.setVisible(true);
keyMessageDetailsPanel.setVisible(false);
blockedSmscDetailsPanel.setVisible(false);
runTimePanel.setVisible(false);
}
初めてアプリケーションを起動すると、表示しているウェルカム パネルが 1 つだけ表示され、welcomePanel.setVisible(true);
クリックするとメニューが表示keyMessageSetupPanel
されます。このパネルを表示するコードは次のとおりです。
private void keyMessageSetupMenuItemActionPerformed(java.awt.event.ActionEvent evt) {
try {
mainFrameContentPanel.add(keyMessageSetupPanel, BorderLayout.CENTER);
keyMessageSetupPanel.setVisible(true);
sMSCSetupPanel.setVisible(false);
welcomePanel.setVisible(false);
homeButton.setVisible(true);
bindingDetailsPanel.setVisible(false);
requestResponseReportPanel.setVisible(false);
keyMessageDetailsPanel.setVisible(false);
blockedSmscDetailsPanel.setVisible(false);
} catch (Exception e) {
printStackTrace();
}
}
私の質問は、このように使用した場合、アプリケーションが機能していることです。ただし、実行時にすべてのパネルをロードし、ロードに時間がかかります。これが気に入らなかった場合は表示され、 (または)welcomePanel
をクリックして別のパネルに移動した場合:menu
button
例:
- ウェルカム パネルの表示
- 行きました
keyMessageSetupPanel
(これはうまくいっています) - 今私は行きました
bindingDetailsPanel
(それは動作します) - しかし、問題は私が再びしたいということです
keyMessageSetupPanel
(それは隠しませんbindingDetailsPanel
)。
編集済みこれは表示するコードですbindingDetailsPanel
mainFrameContentPanel.add(bindingDetailsPanel, BorderLayout.CENTER);
bindingDetailsPanel.setVisible(true);
keyMessageSetupPanel.setVisible(false);
sMSCSetupPanel.setVisible(false);
welcomePanel.setVisible(false);
homeButton.setVisible(true);
requestResponseReportPanel.setVisible(false);
keyMessageDetailsPanel.setVisible(false);
blockedSmscDetailsPanel.setVisible(false);
私を助けてください。 注意私の質問を理解していないコメントを理解していない場合は、説明しようとします。
ありがとう