java红绿灯java红绿灯
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//画圆的类,由JPanel派生
class PaintovalPane extends JPanel
{
Color color;
PaintovalPane(Color colorOfPanel)
{color=colorOfPanel;}
public void paintComponent(Graphics g)
{
super.paintCompon...
java红绿灯
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//画圆的类,由JPanel派生
class PaintovalPane extends JPanel
{
Color color;
PaintovalPane(Color colorOfPanel)
{color=colorOfPanel;}
public void paintComponent(Graphics g)
{
super.paintComponent(g);//调用父类构造方法
g.setColor(color);//设置圆形面板的颜色
g.fillOval(50, 10, 30, 30);//以30为半径作圆形面板
}
}
public class Ex4_2 extends JApplet
{
public void init()
{
//定义三个单选按钮
JRadioButton Red=new JRadioButton("Red");
JRadioButton Yellow=new JRadioButton("yellow");
JRadioButton Green=new JRadioButton("Green");
//定义三个圆形面板,并初始化颜色为白色
final PaintovalPane oval1=new PaintovalPane(Color.white);
final PaintovalPane oval2=new PaintovalPane(Color.white);
final PaintovalPane oval3=new PaintovalPane(Color.white);
//定义三个标签
JLabel messagePanel1=new JLabel("Red");
JLabel messagePanel2=new JLabel("Yellow");
JLabel messagePanel3=new JLabel("Green");
JPanel ovalgroup=new JPanel();
//定义一个面板ovalgroup,并设置其布局为3*2,添加三个圆形面板组件与三个标签组件
ovalgroup.setLayout(new GridLayout(3,2));
ovalgroup.add(oval1);
ovalgroup.add(messagePanel1);
ovalgroup.add(oval2);
ovalgroup.add(messagePanel2);
ovalgroup.add(oval3);
ovalgroup.add(messagePanel3);
//定义一个面板buttonPanel,布局为1*3,添加三个单选按钮组件
JPanel buttonPanel=new JPanel();
buttonPanel.setLayout(new GridLayout(1,3));
buttonPanel.add(Red);
buttonPanel.add(Yellow);
buttonPanel.add(Green);
//将三个单选按钮添加到按钮组group中,实现三个按钮互斥
ButtonGroup group=new ButtonGroup();
group.add(Green);
group.add(Red);
group.add(Yellow);
//设置框架的布局2*1,并添加上述两个面板
setLayout(new GridLayout(2,1));
add(ovalgroup);
add(buttonPanel);
//为三个圆形面板添加Action监听器
Red.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
oval1.color=Color.RED;
oval2.color=Color.white;
oval3.color=Color.white;
repaint();
}
});
Yellow.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
oval2.color=Color.yellow;
oval1.color=Color.white;
oval3.color=Color.white;
repaint();
}
});
Green.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
oval3.color=Color.green;
oval2.color=Color.white;
oval1.color=Color.white;
repaint();
}
});
setVisible(true);
}
本文档为【java红绿灯】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。