Java中如何对按钮编排程序? 尽量不用actionPerformed
2个回答
展开全部
java事件处理有很多种.
按钮JButton的常规事件处理机制需要用到ActionListener 实现actionPerformed方法
我们可以通过鼠标等事件来响应和处理, 可以不使用ActionListener
参考代码如下:
按钮0 使用的是常规的ActionListener 来实现
按钮1 使用的是MouseListener 来实现
import java.awt.event.*;
import javax.swing.*;
public class ButtonFrame extends JFrame {
JButton jb0,jb1;
public ButtonFrame() {
jb0 = new JButton("按钮0");
jb0.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("按钮0被点击了");
}
});
jb1 = new JButton("按钮1");
jb1.addMouseListener(new MouseListener() {
@Override
public void mouseReleased(MouseEvent e) {//鼠标释放
}
@Override
public void mousePressed(MouseEvent e) {
System.out.println("按钮1被按下了");
}
@Override
public void mouseExited(MouseEvent e) {//鼠标移除
// TODO Auto-generated method stub
}
@Override
public void mouseEntered(MouseEvent e) {//鼠标进入
// TODO Auto-generated method stub
}
@Override
public void mouseClicked(MouseEvent e) {//鼠标点击
// TODO Auto-generated method stub
}
});
JPanel jpc = new JPanel();
jpc.add(jb0);
jpc.add(jb1);
add(jpc);
// 窗口属性的设置
setTitle("窗口");// 窗口标题
setSize(152, 150);// 窗口宽 高
setLocationRelativeTo(null);// 窗口居中(屏幕中央)
setDefaultCloseOperation(EXIT_ON_CLOSE);// 点击窗口右上角的按钮时结束程序
}
public static void main(String[] args) {
new ButtonFrame().setVisible(true);
}
}
拓展思考:
除开鼠标事件, 常用的还有键盘事件, 比如一个JPanel 上面画 一辆小汽车,我们可以通过键盘的上下左右来控制 , 就需要让使用到键盘事件 的处理
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询