第12次抽考(GUI)
1.
package week4;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JPasswordField;
import javax.swing.JButton;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame; public class Work2 extends JFrame implements ActionListener{
JButton certain;
public static void main(String[] args) {
// TODO Auto-generated method stub
new Work2(); }
public Work2()
{
super("交通灯");
setSize(400,100);
setBackground(Color.LIGHT_GRAY);
setLocation(300,240);
setBounds(100,100,230,230);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Font font1=new Font("宋体 ",Font.PLAIN,16);
this.setLayout(new FlowLayout());
certain=new JButton("确认");
add(certain);
certain.addActionListener(this);
this.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
//getActionCommand()函数主要是提取按钮中的文本是啥
if(e.getActionCommand().equals("确认"))
{
certain.setText("确认一次");
}
}
}
2.交通灯例
不是很难,主要要对布局有理解,把整个框架当成一个大面板来看待,而中间又夹杂着两个小面板
上面的面板要设置成在上方
下面的面板要设置在下方,在大面板布局中要体现
上面小面板中的几个组件,就流式布局,下面的要用网格布局,因为一个一个的交通灯,都要用一个一个的标签来表示,不过的是背景颜色的更改。然后就是事件处理对象和事件源的关联。
package week4;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JPasswordField;
import javax.swing.JButton;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class GUI_2 extends JFrame implements ActionListener{
//按钮
private JButton b_open,b_close;
JButton J_h;//横向通行
JButton J_z;//纵向通行
JLabel[][] deng=new JLabel[6][6];
public GUI_2()
{
super("交通灯");
setSize(400,100);
setBackground(Color.LIGHT_GRAY);
setLocation(300,240);
setBounds(100, 100, 230, 230); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Font font1=new Font("宋体 ",Font.PLAIN,16);
Panel top=new Panel();
top.setLayout(new FlowLayout());
J_h=new JButton("横向通行");
top.add(J_h);
J_z=new JButton("纵向通行");
top.add(J_z);
add(top,BorderLayout.NORTH);
Panel last=new Panel();
last.setLayout(new GridLayout(6,6,0,0));
for(int i=0;i<6;i++)
{
for(int j=0;j<6;j++)
{
deng[i][j]=new JLabel(" ");
deng[i][j].setFont(font1);
deng[i][j].setOpaque(true);//透明
if(j==2)
{
deng[i][j].setBackground(Color.red);
}
last.add(deng[i][j]);
}
}
for(int z=0;z<6;z++) {
deng[2][z].setBackground(Color.black);
}
add(last, BorderLayout.CENTER); J_z.setEnabled(false);
this.setVisible(true); J_h.addActionListener(this);
J_z.addActionListener(this); }
public static void main(String[] args) {
// TODO Auto-generated method stub
new GUI_2(); }
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==J_h)
{
for(int i=0;i<6;i++)
{
for(int j=0;j<6;j++)
{
if(j==2)
{
deng[i][j].setBackground(Color.black);
} }
}
for(int z=0;z<6;z++) {
deng[2][z].setBackground(Color.red);
}
J_h.setEnabled(false);
J_z.setEnabled(true);
}else if(e.getSource()==J_z)
{
for(int i=0;i<6;i++)
{
for(int j=0;j<6;j++)
{
if(j==2)
{
deng[i][j].setBackground(Color.red);
} }
}
for(int z=0;z<6;z++) {
deng[2][z].setBackground(Color.black);
}
J_h.setEnabled(true);
J_z.setEnabled(false);
}
} }
第12次抽考(GUI)的更多相关文章
- Ubuntu 12.04 Subversion及GUI客户端RabbitVCS安装
(经过一天的使用,发现pygtk的内存泄漏问题严重影响使用,需要打一下deepin ui做的补丁:https://github.com/linuxdeepin/deepin-ui) 1. 类似Tort ...
- 驾驶机动车在高速公路上倒车、逆行、穿越中央分隔带掉头的一次记6分。 答案:错误 2013《123号令-附件2》一、机动车驾驶人有下列违法行为之一,一次记12分[重新考《科目一》]:(七)驾驶机动车在高速公路上倒车、逆行、穿越中央分隔带掉头的; 可以参考:http://zhinan.jxedt.com/info/6375.htm
这一组交通警察手势是什么信号?_2600602 交警的面部对着哪个方向就是在指挥哪个方向的车,减速慢行是右手 左转弯待转是左手!~ 哎 本题解释由台州交通驾校提供 4755支持 hmq 只能看 ...
- 第13次抽考(IO流)
1.将文本文件a.txt 复制成 b.txt.要求: a. 用逐个字符复制方式: b. 用逐行读写方式: c. 用字符数组方式 2.将压缩包a.rar复制成b.rar. 注意:复制前后手工打开文件,若 ...
- Gradle 1.12 翻译——第十二章 使用Gradle 图形用户界面
有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...
- macOS Sierra Git Gui Crash 解决方法
本篇文章由:http://xinpure.com/macos-sierra-git-gui-crash-solution/ 问题描述 自从升级到 macOS Sierra 10.12 之后,git g ...
- java面试中的智力题
智力题,每个正式的笔试.面试都会出,而且在面大企业的时候必然会问到,笔者曾在很多面试中,都被问到过,不过答得都不是很好,因为时间很短,加上我们有时候过于紧张,所以做出这类问题,还是有一定的难度,从这篇 ...
- SDOI 2019 R1 摸鱼记
Day -1 学文化课第一天,也是这周最后一天. 昨晚 mxl 让我们今天下午放学走,大概六点的样子,感觉良好. 早读班主任送来请假条,跟我讲中午放学走??? 很懵逼,以为班主任口胡了,问了一句&qu ...
- Java之美[从菜鸟到高手演变]之智力题【史上最全】 (转)
原文地址:http://blog.csdn.net/zhangerqing/article/details/8138296 PS:在一次偶然的机会中,发现了这篇文章.希望大家能开动脑经. 智力题,每个 ...
- 21天学通PythonPDF高清完整版免费下载|百度云盘
百度云盘:21天学通PythonPDF高清完整版免费下载 提取码:nqa9 豆瓣评分: 书籍封面: 内容简介 · · · · · · <21天学通Python>全面.系统.深入地讲解了P ...
随机推荐
- JDK5.0新特性 (Day_07)
JDK5.0新特性 目录 静态导入 自动装箱/拆箱 for-each循环 可变参数 枚举 JDK 5.0 新特性简介 JDK 5.0 的一个重要主题就是通过新增一些特性来简化开发,这些特性包括 ...
- Go语言基础包之net/http
Go语言基础包之net/http Go语言内置的net/http包十分的优秀,提供了HTTP客户端和服务端的实现. net/http介绍 Go语言内置的net/http包提供了HTTP客户端和服务端的 ...
- Waymo的自主进化
Waymo的自主进化 3月初,Waymo在推特上宣布,共获得了22.5亿美元(约合人民币156亿元)融资,由Silver Lake(银湖资本).Canada Pension Plan Investme ...
- 深入理解ES8的新特性SharedArrayBuffer
简介 ES8引入了SharedArrayBuffer和Atomics,通过共享内存来提升workers之间或者worker和主线程之间的消息传递速度. 本文将会详细的讲解SharedArrayBuff ...
- ThreadLocal源码阅读笔记
功能描述 ThreadLocal解决了访问共享变量的阻塞问题,并且不需要像CAS操作一样牺牲CPU资源,它为每一个线程维护了一个变量副本,每个线程在访问ThrealLocal里面的变量时实际上访问的是 ...
- Java8 中使用Stream 让List 转 Map使用总结
在使用 Java 的新特性 Collectors.toMap() 将 List 转换为 Map 时存在一些不容易发现的问题,这里总结一下备查. 空指针风险 java.lang.NullPointerE ...
- Centos7 安装 Cacti 1.2
1. 安装web server(略) 注意系统时间/时区 ntp server是否定时同步 2. 安装 mysql 5.7 (略) 安装成功后 2.1 编辑 my.ini 文件在 [mysqld] 下 ...
- 深入Netty逻辑架构,从Reactor线程模型开始
本文是Netty系列第6篇 上一篇文章我们从一个Netty的使用Demo,了解了用Netty构建一个Server服务端应用的基本方式.并且从这个Demo出发,简述了Netty的逻辑架构,并对Chann ...
- 【NX二次开发】拉伸面、拉伸封闭曲线成片体UF_MODL_create_extrusion
用那几个拉伸,不能将封闭的曲线拉伸成片体,用UF_MODL_create_extrusion函数是可以的,下面是例子. 帮助上说拉伸片体不能有拔模角度,应该是错误的,下面是一个封闭曲线带拔模角度拉伸片 ...
- Spring Boot WebFlu-05——WebFlux 中 Thymeleaf 和 MongoDB 实践
第05课:WebFlux 中 Thymeleaf 和 MongoDB 实践 前言 本节内容主要还是总结上面两篇内容的操作,并实现一个复杂查询的小案例,那么没安装 MongoDB 的可以进行下面的安装流 ...