2012-04-28 70 views
0

我想顯示我的,不過主要方法GUI顯示在Java GUI中它似乎並沒有這樣做...... 我用的建議在這裏: jformdesigner design it won't display?如何調用一個公共類使用jformdesigner

但沒有工作,

我當時的錯誤是,Eclipse是暗示我需要創建在類中已經定義和相同的調用setVisible方法稱爲setDefaultCloseOperation。

「的方法setDefaultCloseOperation(INT)是未定義的類型bmicalc

的方法調用setVisible(布爾值)是未定義的類型bmicalc」

主要方法:

import java.awt.Container; 
import java.awt.GridLayout; 
import javax.swing.JFrame; 
import javax.swing.WindowConstants; 

public class iu { 
public static void main(String[] args) { 
    javax.swing.SwingUtilities.invokeLater(new Runnable() { 
     public void run() { 
      bmicalc GUI = new bmicalc(); 
      GUI.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
      GUI.setVisible(true); 
     } 
    }); 
class bmicalc extends JFrame{ 

public bmicalc() { 
    initComponents(); 

} 
private void initComponents() { 
    JFrame bmiCalculatorFrame = new JFrame(); 
    { 
     bmiCalculatorFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); 
     bmiCalculatorFrame.setTitle("BMI Calculator"); 
     Container bmiCalculatorFrameContentPane = bmiCalculatorFrame.getContentPane(); 
     bmiCalculatorFrameContentPane.setLayout(new GridLayout()); 
    } 
}}}} 

回答

2

bmicalc班級應該延伸JFrame,但事實並非如此。 setDefaultCloseOperationsetVisible方法屬於JFrame

此外,它不是很清楚,但它看起來像JFormDesigner生成另一個JFrame

編輯:

下面是JFormDesigner產生的JFrame一個例子:

public class TestFrame extends JFrame { 
    public static void main(String[] args) { 
      SwingUtilities.invokeLater(new Runnable() { 
       public void run() { 
        TestFrame frame = new TestFrame(); 
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        frame.setVisible(true); 
       } 
      }); 
    } 

    public TestFrame() { 
     initComponents(); 
    } 

    private void initComponents() { 
     // JFormDesigner - Component initialization - DO NOT MODIFY //GEN-BEGIN:initComponents 

     //======== this ======== 
     Container contentPane = getContentPane(); 
     contentPane.setLayout(new FormLayout(
      "default", 
      "default")); 
     pack(); 
     setLocationRelativeTo(getOwner()); 
     // JFormDesigner - End of component initialization //GEN-END:initComponents 
    } 

    // JFormDesigner - Variables declaration - DO NOT MODIFY //GEN-BEGIN:variables 
    // JFormDesigner - End of variables declaration //GEN-END:variables 
} 

編輯 - 根據最後一個問題編輯

爲了解決您的編譯問題看下面的代碼段。但是,目前還不清楚你想用JFrame bmiCalculatorFrame來達到什麼效果。

class bmicalc extends JFrame{ 

public static void main(String[] args) { 
    javax.swing.SwingUtilities.invokeLater(new Runnable() { 
     public void run() { 
      bmicalc GUI = new bmicalc(); 
      GUI.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
      GUI.setVisible(true); 
     } 
    }); 
} 

public bmicalc() { 
    initComponents(); 

} 

private void initComponents() { 
    //............ 
} 
} 
+0

另一位用戶告訴我,我已經創建了一個JFrame .'私人無效的initComponents(){ \t \t \t的JFrame bmiCalculatorFrame =新的JFrame();',並說,它不能 '有' 和'is-a'JFrame – Banned 2012-04-29 00:14:53

+0

我已經添加了擴展名,但如果我正在討論這個錯誤的方式,你可以請建議一種替代方法來顯示幀 – Banned 2012-04-29 00:23:03

+0

@Banned不知道你的jfd文件如何看起來像,檢查出一個空我在最後一次編輯中添加了「JFrame」。 – tenorsax 2012-04-29 00:26:29

相關問題