第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 ...
随机推荐
- 实操笔记:为 NSQ 配置监控服务的心路历程
在 Go 语言实现的实时消息队列中, NSQ 的热度可以排第一. NSQ 这款消息中间件简单易用,其设计目标是为在分布式环境下运行,为去中心化服务提供一个强大的基础架构.它具有分布式.去中心化的拓扑结 ...
- Step By Step(Lua数据持久化)
Step By Step(Lua数据持久化) 1. 数据文件: 我们可以利用Lua中table的构造式来定义一种文件格式,即文件中的数据是table构造并初始化的代码,这种方式对于Lua程序而言 ...
- unittest的前置后置,pytest的fixture和共享机制conftest.py
Unittest setUp/tearDown setUp当中得到的变量,用self.xxx = value传递给测试用例 setUpClass/tearDownClass setupClass当中得 ...
- 《精通 ASP.NET Core MVC (第七版)》开始发售
学习 Web 开发技术很难吗?没有适合的学习资料,确实很枯燥,很难.如果有一本如同良师益友的优秀图书辅助,就很轻松,一点也不难! 对于优秀的技术图书来说,必须从读者的角度来编写,而不是从作者的角度来编 ...
- Django工作流
1.Django的处理流程(没有涉及到数据库层的操作) 1-1:URL组成 http://127.0.0.1:8000/index/(协议:/ip地址:端口/主机上的目录或文件地址) 1-2:URLc ...
- 八、配置Tomcat日志
[root@svr5 ~]# vim /usr/local/tomcat/conf/server.xml .. .. <Host name="www.a.com" appBa ...
- 29.qt quick-在QML中调用C++类
1.Qml调用C++类 Qt QML模块提供了一组API,用来将C++类扩展QML中.您可以编写扩展来添加自己的QML类型,扩展现有的Qt类型,或调用无法从普通QML代码访问的C/C++函数本章将学习 ...
- Kubernetes 实战——有状态应用(StatefulSet)
一.简介 有状态实例:新实例和旧实例需要有相同的名称.网络标识和状态 无状态实例:可随时被替换 1. ReplicaSet 和有状态 Pod ReplicaSet 通过 Pod 模板创建多个 Pod ...
- Python使用websocket调用语音识别,语音转文字
@ 目录 0. 太长不看系列,直接使用 1. Python调用标贝科技语音识别websocket接口,实现语音转文字 1.1 环境准备: 1.2 获取权限 1.2.1 登录 1.2.2 创建新应用 1 ...
- 【Java】equals 和 == 的区别
之前有在 Java字符串比较(3种方法)以及对比 C++ 时的注意项 中写过一点关于 equals()与==的比较,但最近的Java考试复习过程中发现有部分情况没涉及到,故重新学习一下 在编写代码的时 ...