📄 mouseeventdemo.java
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MouseEventDemo extends JFrame
implements MouseListener,MouseMotionListener{
String strPosition,strAction;
DisplayPanel panel=new DisplayPanel();
public MouseEventDemo() {
super("鼠标事件");
setSize(260,200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//注册鼠标事件监听器
addMouseListener(this);
addMouseMotionListener(this);
this.getContentPane().add(panel); // 将显示面板添加到框架窗口中
panel.init();
}
public static void main(String[] args) {
MouseEventDemo frame = new MouseEventDemo();
frame.show();
}
public void mouseClicked(MouseEvent e) {
strAction="单击鼠标";
panel.tfAction.setText(strAction);
}
public void mousePressed(MouseEvent e) {
strAction="按下鼠标键";
panel.tfAction.setText(strAction);
}
public void mouseReleased(MouseEvent e) {
//用户松开鼠标键调用此方法
}
public void mouseEntered(MouseEvent e) {
//鼠标进入此窗口调用此方法
}
public void mouseExited(MouseEvent e) {
//鼠标退出此窗口调用此方法
}
public void mouseDragged(MouseEvent e) {
//按下鼠标键并移动鼠标时调用此方法
}
public void mouseMoved(MouseEvent e) {
strPosition="X坐标:"+e.getX();
strPosition+=" Y坐标:"+e.getY();
panel.tfPosition.setText(strPosition);
}
}
//创建显示面板
class DisplayPanel extends JPanel{
JLabel lbPosition,lbAction;
JTextField tfPosition,tfAction;
//创建网格包布局管理器对象
GridBagLayout Layout;
GridBagConstraints con;
public void init(){//此函数用于创建各组件对象并添加到面板中
Layout=new GridBagLayout();
con=new GridBagConstraints();
this.setLayout(Layout);
lbPosition=new JLabel("鼠标位置");
lbAction=new JLabel("鼠标动作");
tfPosition=new JTextField();
tfAction=new JTextField();
//设置网格包布局
con.anchor=GridBagConstraints.CENTER;
con.fill=GridBagConstraints.HORIZONTAL;
//添加组件到面板
addComponent(this,Layout,con,lbPosition,0,0,1,1,20,0);
addComponent(this,Layout,con,lbAction,0,1,1,1,20,0);
addComponent(this,Layout,con,tfPosition,1,0,1,1,80,100);
addComponent(this,Layout,con,tfAction,1,1,1,1,80,100);
}
//添加组件到面板
private void addComponent(JPanel panel,GridBagLayout Layout,
GridBagConstraints gbc,Component com,int row,int column,
int numRows,int numColumns,int Weightx,int Weighty){
gbc.gridx=row;
gbc.gridy=column;
gbc.gridwidth=numRows;
gbc.gridheight=numColumns;
gbc.weightx=Weightx;
gbc.weighty=Weighty;
Layout.setConstraints(com,gbc);
panel.add(com);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -