图形用户界面(一)GUI元素之判定事件源
来源:互联网 发布:社交恐惧 知乎 编辑:程序博客网 时间:2024/05/13 07:07
一个监听器对象用来监听两个对象,如何判定事件源?
LeftRight .java(驱动程序)
LeftRightPanel .java
效果如图:
源程序如下:
import javax.swing.JFrame;
public class LeftRight {
public static void main(String[] args) {
JFrame frame = new JFrame("Right or Left");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(new LeftRightPanel());
frame.pack();
frame.setVisible(true);
}
}
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Label;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JPanel;
public class LeftRightPanel extends Panel {
private JButton left,right;
private Label label;
//另外定义盛放按钮的Panel
private JPanel buttonPanel;
public LeftRightPanel(){
left = new JButton("Left");
right = new JButton("Right");
ButtonListener listener = new ButtonListener();
left.addActionListener(listener);
right.addActionListener(listener);
label = new Label("Push a button");
buttonPanel = new JPanel();
buttonPanel.setPreferredSize(new Dimension(200,40));
buttonPanel.setBackground(Color.cyan);
buttonPanel.add(left);
buttonPanel.add(right);
setPreferredSize(new Dimension(200,80));
setBackground(Color.cyan);
add(label);
add(buttonPanel);
}
//判定事件源
public class ButtonListener implements ActionListener{
public void actionPerformed(ActionEvent e) {
if(e.getSource() == left)
label.setText("Left");
else
label.setText("Right");
}
}
}
两个按钮被放到同一个buttonPanel面板中,这本面板不是由LeftRightPanel类表示的面板。将两个按钮放到同一个面板中,可以保证它们显示时的相对位置关系,即使用各种方法重置框架也不受影响。
- 图形用户界面(一)GUI元素之判定事件源
- 图形用户界面(一)GUI元素之文本域
- 图形用户界面(一)GUI元素之复选框
- 图形用户界面(一)GUI元素之单选框
- 图形用户界面(一)GUI元素之JSlider
- 图形用户界面(一)GUI元素
- GUI 图形用户界面(一)
- GUI(图形用户界面)
- GUI(图形用户界面)
- GUI(图形用户界面)
- 图形用户界面(GUI)
- GUI(图形用户界面)
- 图形用户界面(GUI)
- 图形用户界面(GUI)
- 第七周项目一之图形用户界面(GUI)应用程序开发初体验
- 图形用户界面(GUI)系统
- 图形用户界面 GUI(1)
- Java GUI(图形用户界面)
- 幸福
- 用PLSQL自动生成数据库表的Delphi对象
- 世界是个班,美国是班长,中国是团支书(太经典了!)
- 给C++初学者的50个忠告
- 在Python中动态绑定property
- 图形用户界面(一)GUI元素之判定事件源
- 主题:C/C++编译器的选用
- 基本DirectX程序的绘制流水线的学习心德
- js去字符串空格终极版
- MPLS
- FireWall_Failover,ASDM
- JavaWEB开发之的应用11月14日[原创]
- 考试心情
- 中国的软件流氓行为何时了?搜狐输入法竟然自动下载并要求我安装浏览器!!