第十三周

一、键盘事件及监听处理
在Swing事件处理中也可以对见哦的操作进行监听,直接使用KeyListener接口即可,接口的定义如下

如果想要取得键盘键入的内容,则可以通过KeyEvent取得,KeyEvent事件的常用方法如下

实现键盘监听

package org.lxh.demo18.keyeventdemo;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
//此类定义时直接继承了JFrame类丶实现KeyListener接口
public class MyKeyHandle extends JFrame implements KeyListener {

    private JTextArea text=new JTextArea();
    public MyKeyHandle(){
        super.setTitle("Welcome To MLDN");
        JScrollPane scr =new JScrollPane(text);              //加入滚动条
        scr.setBounds(5,5,300,200);
        super.add(scr);                                      //在窗体中加入组件
        text.addKeyListener(this);                           //加入Key监听
        super.setSize(310,210);                              //设置窗体大小
        super.setVisible(true);                              //显示窗体
        super.addWindowListener(new WindowAdapter() {        //加入事件监听
        //覆写窗口关闭方法
            public void windowClosing(WindowEvent arg0) {
                System.exit(1);                              //系统退出
            }
    });
    public void keyTyped(KeyEvent e) {                        //键盘按下
        text.append(":"+e.getKeyChar()+"\n"); 
        
    }   
     
    public void keyReleased(KeyEvent e) {                      //键盘松开
        text.append("键盘"+KeyEvent.getKeyText(e.getKeyCode())+"松开\n");
        
    }
    public void keyTyped(KeyEvent e) {                        //键入内容
        text.append("输入的内容是:"+e.getKeyChar()+"\n"); 
    public class MyKeyEventDemo01{
        public void main(String[] args) {
            new MyKeyHandle();
        }
    }

}

上面的程序针对每个键盘的操作都会监听,而且在取得键盘信息时最好使用KeyEvent类提供静态方法getKeyText()完成,this为当前对象。

   Text.addKeyListener(this);

this表示当前对象,此时将this加入到监听器中,表示将一个监听处理器加入到监听器中。

二、鼠标事件及监听处理
如果想对一个鼠标的操作进行监听,则可以使用MouseListener接口


在每个事件触发后都会产生MouseEvent事件,此事件可以得到鼠标的相关操作

三、单选钮:JRadioButton
单选钮就是在给出多个显示信息中指定选择一个,在Swing中可以使用JRadioButton完成一组单选钮的操作

显示单选钮

package org.lxh.demo18.jradiodemo;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.Jpanel;
import javax.swing.JRadioButton;
class MyRadio
{
    //定义窗体
    private JFrame frame = new JFrame("选择");
    //获取窗体容器
    private Container cont = frame.getContentPane();
    //定义一个单按钮
    private JRadioButton jradio1 = new JRadioButton("英雄联盟");
    //定义一个单选纽
    private JRadioButton jradio2 = new JRadioButton("穿越火线");
    //定义一个单选纽
    private JRadioButton jradio2 = new JRadioButton("地下城与勇士");
    //定义一个单选纽    
    private JPanel pan = new JPanel();
    //定义一个面板
    public MyRadio()
    {
        //定义一个面板的设置边框显示条
        pan.setBorder(BorderFactory.createTitledBorder("请选择你最喜欢的网络游戏"));
        //定义排版样式
        pan.setLayout(new GridLayout(3, 1));
        pan.add(this.jradio1);
        pan.add(this.jradio2);
        cont.add(pan);
        this.frame.setSize(400, 200);
        this.frame.setVisible(true);
        //监听窗体关闭事件
        this.frame.addWindowListener(new WindowAdapter()
        {
            public void windowClosing(WindowEvent obj)
            {
                System.exit(1);
            }
        });
    }
}
public class JRadioButtonDemo01
{
    public static void main(String args[])
    {
        new MyRadio();
    }
}

四、菜单组件
使用JMenu组件可以实现菜单。JMenuBar组件的功能是用来摆放JMenu组件,当建立完多个JMenu组件之后,需要通过JMenuBar组件将JMenu组件加入到窗口中。
JMenuBar的常用方法:

JMenu的常用方法:

posted @ 2019-11-23 22:05  三问丶  阅读(177)  评论(0编辑  收藏  举报