「java小黄灯」用java编写红绿灯

博主:adminadmin 2022-11-25 22:02:08 86

本篇文章给大家谈谈java小黄灯,以及用java编写红绿灯对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

用java编写交通信号灯

按照你的要求编写的红绿灯程序,你看看吧,比较简单。

完整的程序如下:

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import java.awt.Graphics;

public class TrafficLight extends JFrame{

JRadioButton jrbYellow,jrbGreen,jrbRed;

int flag=0;

jpNewPanel jpNewPanel;

public static void main(String[] args){

TrafficLight frame=new TrafficLight();

frame.setSize(500,200);

frame.setLocationRelativeTo(null);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setTitle("TrafficLight");

frame.setVisible(true);

}

public TrafficLight(){

jpNewPanel=new jpNewPanel();

add(jpNewPanel,BorderLayout.CENTER);

JPanel jpRadioButtons=new JPanel();

jpRadioButtons.setLayout(new GridLayout(1,3));

jpRadioButtons.add(jrbYellow=new JRadioButton("Yellow"));

jpRadioButtons.add(jrbGreen=new JRadioButton("Green"));

jpRadioButtons.add(jrbRed=new JRadioButton("Red"));

add(jpRadioButtons,BorderLayout.SOUTH);

ButtonGroup group=new ButtonGroup();

group.add(jrbYellow);

group.add(jrbGreen);

group.add(jrbRed);

jrbYellow.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

flag=2;

jpNewPanel.repaint();

}

});

jrbGreen.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

flag=1;

jpNewPanel.repaint();

}

});

jrbRed.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

flag=3;

jpNewPanel.repaint();

}

});

}

class jpNewPanel extends JPanel{

protected void paintComponent(Graphics g){

super.paintComponent(g);

g.drawRect(0,0,40,100);

g.drawOval(10,10,20,20);

g.drawOval(10,40,20,20);

g.drawOval(10,70,20,20);

if(flag==1){

g.setColor(Color.GREEN);

g.fillOval(10, 70, 20, 20);

}

else if(flag==2){

g.setColor(Color.YELLOW);

g.fillOval(10, 40, 20, 20);

}

else if(flag==3){

g.setColor(Color.RED);

g.fillOval(10, 10, 20, 20);

}

}

}

}

用eclipse编写Java源程序时,出现一个黄色的灯泡和感叹号是怎么回事啊?请前辈们指导下,谢谢了!

这是警告的意思。一般只要你用集合没有用泛型就会出来。或者有些过时的方法也会这样的情况发生。

JAVA创建一个信号灯

import java.awt.*;

import java.applet.*;

import java.awt.event.*;

public class SignalExample extends Applet implements ActionListener

{

Button buttonRed,buttonGreen,buttonYellow;

SignalCanvas signal;

public void init()

{

buttonRed=new Button("红灯亮");

buttonGreen=new Button("黄灯亮");

buttonYellow=new Button("绿灯亮");

signal=new SignalCanvas();

add(buttonRed);

add(buttonGreen);

add(buttonYellow);

add(signal);

buttonRed.addActionListener(this);

buttonGreen.addActionListener(this);

buttonYellow.addActionListener(this);

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==buttonRed)

{

signal.setRed(1);

signal.setYellow(0);

signal.setGreen(0);

signal.repaint();

}

else if(e.getSource()==buttonYellow)

{

signal.setRed(0);

signal.setYellow(1);

signal.setGreen(0);

signal.repaint();

}

else if(e.getSource()==buttonGreen)

{

signal.setRed(0);

signal.setYellow(0);

signal.setGreen(1);

signal.repaint();

}

}

}

class SignalCanvas extends Canvas

{

int red,green,yellow;

SignalCanvas()

{

setSize(38,80);

setBackground(Color.black);

}

public void setRed(int r)

{

red=r;

}

public void setGreen(int g)

{

green=g;

}

public void setYellow(int y)

{

yellow=y;

}

public void paint(Graphics g)

{

if( red==1)

{

g.setColor(Color.red);

g.fillOval(10,3,20,20);

}

if( green==1)

{

g.setColor(Color.green);

g.fillOval(10,28,20,20);

}

if( yellow==1)

{

g.setColor(Color.yellow);

g.fillOval(10,53,20,20);

}

}

}

你代码里面的变量名没改

java 红绿灯 Thread 要求 运行时 下边出现 红灯亮 黄灯暗 绿灯暗 文字 按照红黄绿顺序 循环出现10次即可!

如果是使用多线程来做分别有 红 \黄 \ 绿 三个线程,是无法控制输出的顺序的,多线程的概念里有CPU随机执行的.

使用单线程控制吧 用System.println.out() 打印还差不多

Code:

public class TrafficLightThread implements Runnable {

final static String RED = "红灯亮 ";

final static String YELLOW = "黄灯暗";

final static String GREEN = "绿灯暗";

public void run() {

for (int i = 10; i 0; i--) {

System.out.println("---第"+i+"次---");

System.out.println(RED);

System.out.println(YELLOW);

System.out.println(GREEN);

}

}

public static void main(String[] args) {

new Thread(new TrafficLightThread()).start();

}

}

哪位大神能帮我用java弄一个会闪的黄灯?。。拜托了。。

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Graphics;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class DemoApp extends JFrame implements Runnable {

private boolean isShow = false;

private ColorPanel center = new ColorPanel();

public DemoApp() {

add(center, BorderLayout.CENTER);

setSize(200, 100);

setDefaultCloseOperation(EXIT_ON_CLOSE);

setVisible(true);

new Thread(this).start();

}

public static void main(String[] args) {

new DemoApp();

}

class ColorPanel extends JPanel {

@Override

protected void paintComponent(Graphics g) {

super.paintComponent(g);

Color defaultColor = g.getColor();

if (isShow) {

g.setColor(Color.YELLOW);

g.fillOval(100, 10, 50, 40);

g.setColor(defaultColor);

isShow = false;

} else {

isShow = true;

}

}

}

@Override

public void run() {

while (true) {

try {

repaint();

Thread.sleep(500);

} catch (Exception e) {

}

}

}

}

关于java小黄灯和用java编写红绿灯的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-25,除非注明,否则均为首码项目网原创文章,转载请注明出处。