2017-06-16 106 views
-2

我有2碼本是主要的講座的Java GUI使用的JFrame

import javax.swing.JFrame; 

class gui2 
{ 
    public static void main(String args[]) 
    { 
     frame a=new frame(); 
     a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     a.setSize(275*180); 
     a.setVisible(true); 
    } 
} 

,這一個課堂上,我是importing--

import java.awt.FlowLayout; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 

public class frame extends JFrame 
{ 
    private JLabel first; 
    public frame(){ 
     super("Trying GUI"); 
     setLayout(new FlowLayout()); 
     first=new JLabel("tHIS IS a sentence"); 
     first.setToolTipText("hover to see"); 
     add(first); 
    } 
} 

當我運行代碼,我是得到一個無法訪問框架的錯誤。我在做什麼錯誤?

+2

顯示完整的完整的錯誤消息,而不是你對它的解釋。 –

+1

'a.setSize(275 * 180);'以 – MadProgrammer

+1

@MadProgrammer開頭是錯誤的感謝您指出。它解決了這個問題。程序現在給出了正確的輸出。我錯過了逗號。 –

回答

3

嗨,我已經在我的日食跑了你的代碼,很容易就看到有一個編譯錯誤上gui2.java enter image description here

我想你想創建一個275寬度和180高度的框架,如果它是tru E,你建議立即進行刪除調用方法一樣a.setSize(275,180)

我固定的錯誤,並再次運行,這是OK enter image description here

BTW:我認爲,類名應該像GUI2是大寫,這是由java推薦的。如果你想知道爲什麼a.setSize(275 * 180)是錯誤的,你可以看到Java API的細節:http://docs.oracle.com/javase/8/docs/api/

希望這將幫助你

+0

是的。謝謝。它現在起作用了。我錯放了*標記。 –

+0

@ShubamBharti很高興看到這一點 – Jian

2

您的代碼沒有遵循Java的命名約定,frameFrameMyFrame甚至MainFrame。除此之外,你的代碼的工作,如果我改變

a.setSize(275*180); 

a.setSize(275, 180); 

hover to see

+0

我只是在嘗試代碼,所以命名約定不是一個大問題 –