JAVA实现红绿灯控制程序

1星 需积分: 25 7 下载量 19 浏览量 更新于2024-09-14 收藏 2KB TXT 举报
"红绿灯JAVA程序是一个使用Java Swing库创建的简单图形用户界面应用程序,它模拟了交通信号灯的变化。程序包含一个下拉菜单,用户可以选择不同的信号灯状态(红、黄、绿),选择后,程序会在画布上显示相应的颜色。” 在Java编程中,`javax.swing`和`java.awt`包主要用于构建图形用户界面(GUI)。在这个程序中,`JFrame`是窗口的基础,而`JComboBox`则用于创建下拉菜单,让用户选择信号灯的状态。`GridLayout`布局管理器确保面板上的组件按照网格排列,`BorderLayout`则用于在窗口的北(顶部)和中心位置添加组件。 程序的核心类`test`继承自`JFrame`,并包含了两个内部类:`JPanel`对象`p1`和自定义的`drawPanel`。`p1`用于放置下拉菜单`cb`,而`drawPanel`是负责绘制信号灯图形的面板。 `JComboBox`的`addItemListener`用于监听用户在下拉菜单中的选择。当用户选择不同的选项时,`itemStateChanged`方法会被调用。在这个方法中,根据用户选择的值("红"、"黄"、"绿"),`drawPanel`的`i`变量会被更新,然后调用`repaint()`方法使得画面重绘,显示对应颜色的信号灯。`i`变量在这里作为状态指示器,决定画布上绘制哪种颜色的圆圈。 `drawPanel`类扩展了`JPanel`,并覆盖了`paint`方法来实现自定义的绘图。这里,`Graphics2D`对象`g2`用于增强绘图功能,如创建`Ellipse2D`对象来表示信号灯的圆圈。根据`i`的值,程序将绘制不同颜色的圆,模拟红绿灯的状态变化。 这个程序虽然简单,但它展示了如何使用Java GUI库来创建交互式应用,以及如何通过事件监听来响应用户的操作。此外,它也演示了如何在Java中进行基本的图形绘制,这对于理解和开发更复杂的GUI应用程序是非常基础且重要的技能。