簡體   English   中英

從另一個JFrame調用JFrame方法

[英]Calling A JFrame method from Another JFrame

我也正在尋找解決方案。 目前,我的netbeans項目中有2個JFrames和1個實用程序類。 我不是Java方面的專家,所以請多多包涵。 我嘗試瀏覽Java文檔以及在此站點上,但是似乎找不到解決我問題的方法。

這是場景:

我的啟動器類啟動名為MainForm.javaJFrame ,然后該窗體將組件初始化到屏幕上。 在此表單上,我有一個按鈕可以啟動一個名為ConfigEditor.java的新表單。 該表格用於編輯配置文件。 我在此表單上有一個“ 保存”按鈕,基本上我想做的是單擊“保存”后,獲取MainForm.java來調用一種方法,以使用新值填充正確的組件。

這是一個示例,這是ConfigEditor.java上“保存”按鈕中的一些代碼:

if(reply == JOptionPane.YES_OPTION){
        try {
            Utilities.writeConfigFileBasic(ExecutionLists.getText(),DefaultResultsFile.getText(), 
                    DefaultTestDir.getText(), Environments.getText(), ResultsViewerFile.getText());
            ConfigTextArea.append(Utilities.readConfigFile());
            JOptionPane.showMessageDialog(rootPane, "Saved");

現在,在最后一行之后,我想調用諸如MainForm.initMyComponents() 因為此方法存在於MainForm JFrame但我不能稱之為。 該方法的目的是用從配置文件中提取的數據填充某些字段。 很抱歉,如果我沒有很好地解釋它,我對Java還是很陌生,如果您需要任何說明,請告訴我,我會盡力加以說明。

您可以在構造時簡單地將MainForm的引用傳遞給ConfigEditor嗎? 例如:

... //Code fired by clicking the button you mentioned which is in class MainFrame
ConfigEditor configEditor = new ConfigEditor(this); //This would be a reference to your MainFrame

使用此參考,您可以在MainFrame類中調用所需的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM