就是使用JButton,点击这个按钮,这个所在窗口就关闭了,在线等
这个的事件是什么,最好有简单的例子
这个的事件是什么,最好有简单的例子
解决方案 »
- JMenu 不显示!怎么回事
- 遇到的小问题,有点意思啊。估计很多初学者都会遇到的,大家都看看.
- 一行代码太长,想分开两行写,怎么办?
- 哪位有SCJD电子参考书:Sun Certified Programmer & Developer for Java 2 Study Guide
- 求助!java类调用数据库的问题
- Socket监听的多线程怎么实现?
- 从键盘上输入2个数,然后输出相加结果,如何实现????????????????
- Java能调C++写的函数吗
- 各位大虾:那里有介绍JAVASWING方面的比较深入的电子版图书。
- 谢谢回答!那里有关于数据库连接池的较详细的应用实现?
- 时间比较的问题
- 怎么会出现下面的错误
我想把事件和对象分开写,于是就 //cb.addActionListener(this); 但是去掉注释就编译错误import javax.swing.*;
import java.awt.*;
import javax.swing.border.*;
import com.bruceeckel.swing.*;
import javax.swing.event.ListSelectionEvent;
import java.awt.event.*; public class GUITest02 extends JApplet { //test data
private String[] flavors = {
"Chocolate", "Strawberry", "Vanilla Fudge Swirl",
"Mint Chip", "Mocha Almond Fudge", "Rum Raisin",
"Praline Cream", "Mud Pie"
};
private JList jListtest = new JList(flavors);
private MyDialog dlg = new MyDialog(null); public void init() {
Box bh = Box.createHorizontalBox();
bh.add(Box.createRigidArea(new Dimension(100, 10))); bh.add(jListtest);
jListtest.addMouseListener ( new MouseAdapter(){
public void mouseClicked(MouseEvent a) {
if(a.getClickCount() == 2) {
System.out.println (jListtest.getSelectedValue());
dlg.show();
}
}
});
bh.add(Box.createRigidArea(new Dimension(30, 10)));
JButton cb = new JButton("关闭窗口");
//cb.addActionListener(this); //!!!!!!??????这里出问题了
bh.add(cb);
getContentPane().add(bh);
}
public void actionPerformed(ActionEvent e) //监听处理的方法。
{
System.out.println("TEST");
}
public static void main(String[] args) {
Console.run(new GUITest02(), 450, 300);
}
}======================================================给出包里的一个通用类
//: com:bruceeckel:swing:Console.java
// Tool for running Swing demos from the
// console, both applets and JFrames.
// From 'Thinking in Java, 3rd ed.' (c) Bruce Eckel 2002
// www.BruceEckel.com. See copyright notice in CopyRight.txt.
package com.bruceeckel.swing;
import javax.swing.*;
import java.awt.event.*;public class Console {
// Create a title string from the class name:
public static String title(Object o) {
String t = o.getClass().toString();
// Remove the word "class":
if(t.indexOf("class") != -1)
t = t.substring(6);
return t;
}
public static void
run(JFrame frame, int width, int height) {
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(width, height);
frame.setVisible(true);
}
public static void
run(JApplet applet, int width, int height) {
JFrame frame = new JFrame(title(applet));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(applet);
frame.setSize(width, height);
applet.init();
applet.start();
frame.setVisible(true);
}
public static void
run(JPanel panel, int width, int height) {
JFrame frame = new JFrame(title(panel));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(panel);
frame.setSize(width, height);
frame.setVisible(true);
}
} ///:~
public class GUITest02 extends JApplet=====>public class GUITest02 extends JApplet implements ActionListener
import java.awt.event.*;
import javax.swing.*;class BasicButton implements ActionListener
{
// 构造方法-------------------------------------------------------------------
public BasicButton()
{
initComponent();
win.show();
}
// 覆盖接口ActionListener的回调方法-------------------------------------------
public void actionPerformed(ActionEvent e)
{
String cmd = e.getActionCommand();
if(cmd.equals(BasicButton.CMD_OK)) // 确认
JOptionPane.showMessageDialog(win,"你单击了按钮"+BasicButton.BTN_OK);
if(cmd.equals(BasicButton.CMD_EXIT)) // 退出
{
win.dispose(); //关闭窗口
System.exit(0);
}
}
// 生成窗口的组件-------------------------------------------------------------
private void initComponent()
{
win = new JFrame("事件处理例程");
pane = win.getContentPane();
pane.setLayout(new GridLayout());
addButton(BTN_OK,CMD_OK);
addButton(BTN_EXIT,CMD_EXIT);
win.setSize(200,100);
}
// 在面板上添加按钮-----------------------------------------------------------
private void addButton(String caption,String cmd)
{
JButton b = new JButton(caption); // b为事件源
b.setFont(new Font("宋体",Font.BOLD,24));
b.setActionCommand(cmd);
b.addActionListener(this); // 将BasicButton类的对象作为监听器注册给b
pane.add(b);
}
private JFrame win;
private Container pane;
public static final String BTN_OK = "确认";
public static final String BTN_EXIT = "退出";
public static final String CMD_OK = "OK";
public static final String CMD_EXIT = "EXIT";
}class tester
{
public static void main(String[] args)
{
new BasicButton();
}
}