2012-04-03 138 views
1

我有一個小模板,用於通過NetBeans 7.1通過簡單的Java應用程序實現applet(如不使用Javacard,Netbeans平臺等..只是一個簡單的Java應用程序與小程序初始化時,應用程序運行)當X(關閉按鈕)被點擊時,我想讓我的框架關閉

我設法使它調用小應用程序時,我按netbeans中的運行按鈕,我在小程序內的功能,但我似乎無法讓它關閉,我有一種可怕的感覺,人們會告訴我使用jFrame並實現EXIT_ON_CLOSE方法。

這不是我想知道該怎麼做的,我的任務是使用Frames!= jFrames來實現它。 我希望有人可以幫忙,因爲它現在有點讓我感到困擾,我必須繼續使用Java分配。

內附有代碼/對甲類中:appletframe和B:小應用程序

* 1.4 Write an applet to display a line of text. 
    * The text should then change its font size and style (bold, italic, underline) 
    * depending on where the mouse is clicked on the screen. 
    */ 
    package appletframe; 
    import java.awt.Graphics; 
    import java.awt.Frame; 
import java.applet.Applet; 

    /** 
    * @author MuthaLoad aka Gruffy2012 
    */ 

    import java.awt.*; 

    public class AppletFrame extends Applet{ 

public static void main(String[] args) { 

/*construct needs object instances*/ 
MrApplet mrApplet = new MrApplet(); // create instance/obj of MrApplet 
Frame myFrame = new Frame("Applet"); // create frame "title optional" 
//setDefaultCloseOperation(myFrame.EXIT_ON_CLOSE);(jFrame- not wanted) 

/* add applet to the frame*/ 
//myFrame.addWindowListener(); 
myFrame.add(mrApplet, BorderLayout.CENTER); 
myFrame.setBounds(10,10,500,500); 
myFrame.setVisible(true); // step to make frame visible 

/*initialize instance of mrApplet*/ 
mrApplet.init(); 
} // end main 
} // end class 

B:小程序用於讀取

package appletframe; 

import java.awt.*; //for buttons 
import java.awt.event.*; //for events 
import java.applet.*; //main applet api`s 
import java.awt.Graphics; //graphics 

public class MrApplet extends Applet implements ActionListener 
{ 

private static final long serialVersionUID = 1L; 
Button btnClick; 
String msg = ""; 

public void init() 
{ 
    // TODO start asynchronous download of heavy resources 
    setSize(500, 500); 
    Button btnClick = new Button("Press Me "); 
    btnClick.addActionListener(this); 
    add(btnClick); 
} 
public void actionPerformed(ActionEvent e) 
{ 
    //throw new UnsupportedOperationException("Not supported yet."); 
    msg = "Yay, the button works"; 
      repaint(); 
}  
public void paint (Graphics g) 
{ 
    g.setFont(new Font("Serif", Font.ITALIC, 30)); //new font obj, font , font style, font size 
    g.setColor(new Color(0,255,0)); //new color obj, r,g,b 
    g.drawString(msg, 40, 80); 

} 
// TODO overwrite start(), stop() and destroy() methods 
} 

再次感謝,並澄清任何混亂.. 我正在尋找一個關於退出時關閉我的applet和框架窗口的解決方案的指針,沒有用jFrame重新實現它,儘管我知道這在第一個實例中會更容易。謝謝 謝謝,並一如既往,感謝您的所有建議。 gruffy321

+2

'EXIT_ON_CLOSE'是一個常量,而不是一個方法。 – mre 2012-04-03 14:30:06

回答

3

將此行添加到ApplicationFrame類的末尾。

myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

你想不JFrame的框架做,那麼你必須在的WindowListener事件添加到框架,並有覆蓋的windowClosing()方法

myFrame.addWindowListener(new WindowAdapter(){ 
public void windowClosing(WindowEvent we){ 
    System.exit(0); 
}); 
+0

是的,現在感謝超級quuick響應,但就像我說的,我只是不想要一個jframe選項(我知道API帶有簡單的訪問非常簡單的功能,必須使用框架(notjFrame)API手動實現) 。謝謝反正Chandra爲bing所以超級快 – gruffy321 2012-04-03 14:34:51

+0

@ gruffy321看到我編輯的答案。 – 2012-04-03 14:40:06

+0

驚人的感謝超級傻瓜快速反應再次chandra,我會離開,現在試試這個,歡呼的芽.. Gruffy – gruffy321 2012-04-03 14:48:08

相關問題