1.编写程序:用Java语言实现模拟交通信号灯 【说明】使用图标和单选按钮模拟交通红绿灯,当选中某个单选按钮时,对应的出现图中不 同颜色的交通灯。
时间: 2024-12-14 07:14:31 浏览: 3
在Java中编写模拟交通信号灯的程序,可以利用Swing库创建图形用户界面(GUI),并结合事件监听器来控制信号灯的状态。以下是一个简单的步骤说明:
1. **设置基本环境**:首先,导入javax.swing.*包,因为Swing是Java的标准GUI工具包。
```java
import javax.swing.*;
```
2. **创建窗口**:创建一个新的JFrame作为主窗口,并添加图标。
```java
JFrame frame = new JFrame("交通信号灯");
frame.setIconImage(ImageIcon.of("your_traffic_light_icon.png")); // 图标路径替换为实际路径
```
3. **构建面板**:在窗口内添加一个JPanel,用于放置交通信号灯的组件。
```java
JPanel panel = new JPanel();
frame.add(panel);
```
4. **创建复选框或单选按钮**:为红、黄、绿三种信号灯状态分别创建JRadioButton。设置默认初始状态,比如红灯。
```java
JRadioButton redLight = new JRadioButton("红灯");
redLight.setSelected(true); // 默认红灯亮起
JRadioButton yellowLight = new JRadioButton("黄灯");
JRadioButton greenLight = new JRadioButton("绿灯");
buttonGroup = new ButtonGroup(); // 创建ButtonGroup管理单选按钮
buttonGroup.add(redLight);
buttonGroup.add(yellowLight);
buttonGroup.add(greenLight);
panel.add(redLight);
panel.add(yellowLight);
panel.add(greenLight);
```
5. **事件监听**:给每个单选按钮添加监听器,当单选按钮被点击时改变对应的颜色图片显示。
```java
redLight.addActionListener(e -> {
// 显示红色信号灯图像
JLabel light = new JLabel(new ImageIcon("red_light.png"));
light.setBounds(// 设置位置);
panel.removeAll();
panel.add(light);
});
// 对yellowLight和greenLight同样处理,只是更换图片路径和显示位置
```
6. **启动程序**:最后,设置窗口关闭操作,如需要的话,并让窗口可见。
```java
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
```
阅读全文