1.4.2 键盘事件的处理
KeyListener 接口实现了处理键盘事件 KeyEvent 对象描述键盘事件的相关信息。
KeyListener 接口有三个方法:KeyPressed KeyReleased KeyTyped 编写键盘接听器类的时候既可以实现KeyListener接口也可以继承类 KeyAdapter。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_①_1
Swing组件界面设计
Swing 的顶层容器有JFrame 和 JDialog;
JFrame 对象不可以直接调用add 和 setLayout 方法来设置布局信息,每一个JFrame 对象都有一个与之对应的Container类的对象,默认BorderLayout。 可以通过调用 getContentPane 方法获得对应的内容面板,也可以
通过setContentPane(Container contentPane) 来重新设置内容面板。
JDialog 是对话框类
1 package awt;
2 import java.awt.Color;
3 import java.awt.Container;
4 import java.awt.event.ActionEvent;
5 import java.awt.event.ActionListener;
6
7 import javax.swing.JButton;
8 import javax.swing.JDialog;
9 import javax.swing.JFrame;
10 import javax.swing.JLabel;
11 import javax.swing.SwingConstants;
12 import javax.swing.WindowConstants;
13
14 class MyJDialog extends JDialog{
15 public MyJDialog(MyFrame_0 frame) {
16 // TODO Auto-generated constructor stub
17 super(frame,"第一个JDialog窗体",true);
18 Container container = getContentPane();
19 container.add(new JLabel("这是一个对话框"));
20 setBounds(100,100,200,120);
21 }
22 }
23 public class MyFrame_0 extends JFrame{
24
25 public static void main(String[] args) {
26 // TODO Auto-generated method stub
27 new MyFrame_0();
28 }
29
30 public MyFrame_0() {
31 // TODO Auto-generated constructor stub
32
33 Container container = getContentPane();
34 container.setLayout(null);
35 JLabel jl = new JLabel("这是一个JFrame窗体");
36 jl.setHorizontalAlignment(SwingConstants.CENTER);
37 container.add(jl);
38 JButton bl = new JButton("弹出对话框");
39 bl.setBounds(10,10,100,50);
40 bl.addActionListener(new ActionListener() {
41
42 @Override
43 public void actionPerformed(ActionEvent e) {
44 // TODO Auto-generated method stub
45 new MyJDialog(MyFrame_0.this).setVisible(true);
46 }
47 });
48 container.add(bl);
49 setBackground(Color.white);
50 setVisible(true);
51 setSize(200,120);
52 setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
53 }
54 }