当X(关闭按钮)被点击时,我想让我的框架关闭
问题描述:
我有一个小模板,用于通过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
答
将此行添加到ApplicationFrame类的末尾。
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
你想不JFrame的框架做,那么你必须在的WindowListener事件添加到框架,并有覆盖的windowClosing()方法。
myFrame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent we){
System.exit(0);
});
'EXIT_ON_CLOSE'是一个常量,而不是一个方法。 – mre 2012-04-03 14:30:06