(1)窗体和按钮
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class guiDem {
// 定义该图形所需的组件的引用
private Frame frame;
private Button button;
guiDem(){
init();
}
public void init(){
frame = new Frame();//构造一个最初不可见的 Frame 新实例()。
button = new Button("点击我将关闭窗口");
frame.setTitle("TURAN_TEST_商品中心");//设置窗口标题内容
//f.setSize(500, 400);//设置窗口大小,宽度500,高度400
//f.setLocation(300, 200);//设置窗口位置为距离屏幕左边水平方向300,上方垂直方向200
frame.setVisible(true);//设置窗体可见。
frame.setBounds(300, 100, 600, 500); // 设置窗口位置和大小
frame.setLayout(new FlowLayout());//设置窗体布局为流式布局。
// 将组件添加到frame中
frame.add(button);
// 加载一下窗体上的事件
dealwithEvent();
// 显示窗体
frame.setVisible(true);
}
private void dealwithEvent()
{
//窗体关闭监听
frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
//按钮活动监听器以及处理事件
button.addActionListener(new ActionListener()
{
private int actioncount=1;
public void actionPerformed(ActionEvent e)
{
System.out.println("按钮被活动"+actioncount+++"次");
}
});
//鼠标进入按钮监听触发事件以及鼠标被双击监听触发事件
button.addMouseListener(new MouseAdapter(){
private int count=1;
private int clickCount=1;
public void mouseEntered(MouseEvent e)
{
System.out.println("鼠标进入到该组件"+count+++"次");
}
public void mouseClicked(MouseEvent e)
{
if(e.getClickCount()==2)
System.out.println("双击被执行"+clickCount+++"次");
}
});
// 键盘监听
button.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
//如果按下ESC或者按下CTRL+enter退出程序
if ((e.getKeyCode() == KeyEvent.VK_ESCAPE) || (e.isControlDown() && e.getKeyCode() == KeyEvent.VK_ENTER) ) {
System.out.println(KeyEvent.getKeyText(KeyEvent.VK_ESCAPE)+ "键盘码为:" + e.getKeyCode());
System.exit(0);
} else {
System.out.println(KeyEvent.getKeyText(e.getKeyCode())+ "键盘码为:" + e.getKeyCode());
}
}
});
/*让按钮具备退出程序的功能
按钮就是事件源
* 那么选择那个监听器呢?
* 通过关闭窗体示例了解到想要知道哪个组件具备什么样的特监听器
* 需要查看该组件对象的功能。*/
// button.addActionListener(new ActionListener(){
// public void actionPerformed(ActionEvent e){
// System.exit(0);
// }
// });
}
public static void main(String[] args) {
new guiDem();
}
}
(2)制作批处理文件
@echo off
javac -encoding UTF-8 guiDem.java
java guiDem
@pause
del *.class