`

package com.liu.lesson01;

import javax.swing.;

import java.awt.;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.nio.file.Path;

public class WarningLight extends JFrame {

boolean flag = true;

public WarningLight() {

/**

* 绘制界面

*/

this.setLayout(null);

JLabel jl = new JLabel();//实例化界面对象

setTitle("交通信号灯程序");//设置标题

this.setBounds(515, 98, 836, 908);//设置窗口宽为836像素,高为908像素

this.add(jl);//将其加入到窗口当中

setResizable(false);// 设置窗体是否可以调整大小,参数为布尔值

setDefaultCloseOperation(EXIT_ON_CLOSE);// 用户点击窗口关闭

/**

* 设置开始按钮

*/

JButton begin = new JButton("点击开始");//实例化开始按钮

begin.setBounds(610, 370, 140, 50);

begin.setFont(new java.awt.Font("Dialog", 1, 15));//设置字体样式

begin.setForeground(Color.white);//设置字体颜色

begin.setBackground(new Color(8, 163, 219));//设置按钮颜色

/**

* 警示灯切换

*/

JLabel lb = new JLabel();//实例化对象

lb.setBounds(200, 50, 568, 798);//设置宽高

jl.add(lb);//添加到jn里

this.add(lb);//添加当前的lb

/**

* 文字提示

*/

JLabel ts = new JLabel("交通信号提示");

ts.setBounds(586, 280, 200, 30);

ts.setFont(new java.awt.Font("黑体", 1, 30));//设置字体样式

add(ts);

//监听器,事件处理

begin.addActionListener(new ActionListener() {

@Override//覆写方法

public void actionPerformed(ActionEvent e) {

//匿名实例化线程

new Thread(new Runnable() {

@Override//覆写run方法

public void run() {

//循环标记

while (flag) {

ts.setForeground(Color.white);//设置字体颜色

lb.setIcon(new ImageIcon("C:\\Users\\86134\\Pictures\\Camera Roll\\hong.png"));//设置显示红灯png

lb.setSize(368, 698);//设置宽高

//area.setBackground(Color.RED);

try {

ts.setText("红灯/停一停");

Thread.sleep(5200);//设置睡眠

} catch (InterruptedException e) {

e.printStackTrace();

}

lb.setIcon(new ImageIcon("C:\\Users\\86134\\Pictures\\Camera Roll\\huang.png"));//设置显示黄灯png

lb.setSize(368, 698);//设置宽高

ts.setText("黄灯/等一等");

//area.setBackground(Color.YELLOW);

try {

Thread.sleep(2000);//设置睡眠

} catch (InterruptedException e) {

e.printStackTrace();

}

lb.setIcon(new ImageIcon("C:\\Users\\86134\\Pictures\\Camera Roll\\lv.png"));//设置显示绿灯png

lb.setSize(368, 698);//设置宽高

ts.setText("绿灯/可通行");

// area.setBackground(Color.GREEN);

try {

Thread.sleep(5000);//设置睡眠

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

}).start();//开启线程

}

});

this.add(begin);//添加当前按钮

/**

* 设置结束按钮

*/

JButton end = new JButton("点击结束");//实例化结束按钮

end.setBounds(610, 432, 140, 50);

end.setFont(new java.awt.Font("Dialog", 1, 15));//设置字体样式

end.setForeground(Color.white);//设置字体颜色

end.setBackground(new Color(8, 163, 219));//设置按钮颜色

//事件处理

end.addActionListener(new ActionListener() {

@Override//覆写方法

public void actionPerformed(ActionEvent e) {

flag = false;//结束进程

}

});

this.add(end);//添加当前结束按钮

/**

* 设置窗口图标

*/

Toolkit kit = Toolkit.getDefaultToolkit(); //创建窗口图标对象

Image image = kit.getImage("C:\\Users\\86134\\Pictures\\Camera Roll\\xinhen\\22.png"); //设置窗口图标路径

setIconImage(image); //换掉窗体样式

/**

* 设置背景图片

*

*/

setSize(839, 908);//设置大小

String path = "C:\\Users\\86134\\Pictures\\Camera Roll\\timg.jpg";//设置背景图片的路径

ImageIcon background = new ImageIcon(path); // 背景图片

JLabel label = new JLabel(background);// 把背景图片显示在一个标签里面

label.setBounds(0, 0, this.getWidth(), this.getHeight()); // 把标签的大小位置设置为图片刚好填充整个面板

JPanel imagePanel = (JPanel) this.getContentPane(); // 把内容窗格转化为JPanel,否则不能用方法setOpaque()来使内容窗& 格透明

imagePanel.setOpaque(false);

this.getLayeredPane().add(label, new Integer(Integer.MIN_VALUE));// 把背景图片添加到分层窗格的最底层作为背景

this.setVisible(true);//设置是否窗口显示

}

public static void main(String[] args) {

new WarningLight();

}

}

`

java 红绿灯_java -- GUI 红绿灯相关推荐

  1. java 五子棋_Java GUI 单机版五子棋

    @SuppressWarnings("ALL")public class MyFrame extendsFrame {private static int y;//鼠标点击的X轴 ...

  2. Java图形开发--GUI

    Java图形开发--GUI 1.图形用户界面(gui)介绍 图形用户界面(Graphics User Interface,GUI)是用户与程序交互的窗口,比命令行的界面更加直观并且更好操作. awt, ...

  3. 【源码+教程】Java课设项目_12款最热最新Java游戏项目_Java游戏开发_Java小游戏_飞翔的小鸟_王者荣耀_超级玛丽_推箱子_黄金矿工_贪吃蛇

    马上就要期末了,同学们课设做的如何了呢?本篇为大家带来了12款热门Java小游戏项目的源码和教程,助力大家顺利迎接暑假![源码+教程]Java课设项目_12款最热最新Java游戏项目_Java游戏开发 ...

  4. java中gui_java GUI 快速入门

    java 中编写 GUI 有两中工具包,分别为 AWT.Swing. Swing 是 AWT 的拓展,Swing 具有比 AWT 丰富的组件和方法. AWT 和 Swing 都能跨平台使用:AWT 会 ...

  5. java笔记(含gui)

    第一次java笔记(包含gui) bin 存放jdk的各种工具命令 javac和java存放在这个目录 conf 存放jdk的相关配置文件 include 存放一些平台特定的头文件 jmods 存放了 ...

  6. java 布局_java布局

    Java中GUI的默认窗体布局 和 常见的窗体布局方案 Java中GUI的默认窗体布局 常见的窗体布局方案 我的GitHub地址:https://github.com/heizemingjun 我的博 ...

  7. 深度学习目标检测:YOLOv5实现红绿灯检测(含红绿灯数据集+训练代码)

    深度学习目标检测:YOLOv5实现红绿灯检测(含红绿灯数据集+训练代码) 目录 深度学习目标检测:YOLOv5实现红绿灯检测(含红绿灯数据集+训练代码) 1. 前言 2. 红绿灯检测数据集说明 (1) ...

  8. java 习题_java经典选择题100例及答案

    下述说法正确的是(). A .a 是整数类型变量,b 是整数类对象.B .a 是整数类对象,b 是整数类型变量. C .a 和b 都是整数类对象并且值相等. D .a 和b 都是整数类型变量并且值相等 ...

  9. 【Java】基于GUI的网络通信程序设计

    目录 一. 程序内容 二. 要求分析 三. 程序编写 0. 程序结构 1. 服务端程序的GUI设计 2. 服务端业务逻辑的编写 3. 为GUI界面绑定按钮事件 4. 将服务端的源码复制后,进行重构,并 ...

最新文章

  1. 神经网络与深度学习——TensorFlow2.0实战(笔记)(四)(python文件)
  2. stm32基本定时器
  3. Error in driver during machine creation: Machine didn‘t return an IP after 120 seconds, aborting
  4. 守卫工厂智能 当SDN遇上智能制造
  5. ASP.NET页面统一布局、页面导航(站点地图)
  6. iPhone4 兼容 iPhone 5 需要注意的地方
  7. 普通人如何使用ChatGPT接单挣钱-第一弹
  8. 烂笔头笔记:Charles工具在Windows系统中闪退(无法打开)的问题修复
  9. 飞书机器人python获取open_id对应的用户信息api调用
  10. 人工智能作业之神经网络股票(预测)系统
  11. 查询计算机会议信息一站式工具:截稿日期、召开信息、会议等级全都有!
  12. 广东 - 012 - 汕头南澳岛
  13. 付宇泽20190912-1 每周例行报告
  14. 显示器测试软件 鲁大师,鲁大师怎么检测显示器 鲁大师有什么作用
  15. Swift 代码调试核武-LLDB调试基础
  16. The Django Book 网址
  17. ECBM函数库V3学习笔记⑥驱动TM1650
  18. java remote desktop_Chrome Remote Desktop:让你在任意设备上远程连接Windows桌面
  19. Java+Servlet+JSP+Mysql+Tomcat实现Web学生选课管理系统
  20. 虚拟机系统 无网络连接网络连接网络连接服务器,电脑中VMware虚拟机系统网络适配器未成功连接网络的解决方法...

热门文章

  1. 网络通信技术--设置IP地址
  2. bzoj4372 烁烁的游戏
  3. 又发现一个免费网盘分享给大家
  4. 【多人会议功能】uniapp - 微信小程序 - 腾讯云
  5. 技术管理经验谈丨从程序员到部门经理的“完美三级跳”
  6. 微信公众号红包营销系统开发
  7. 2015小米校招技术类笔试题
  8. java thrift异步调用_thrift异步调用 - thrift-cob_style-tnonblockingserver - ItBoth
  9. go-cms golang内容管理系统, vue分离+自动代码生成
  10. 手机安装青龙面板,低功耗,随时随地的薅羊毛(无需服务器)