第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 ...
随机推荐
- Centos7.4永久修改系统时间
[root@V3B01-zsy yum.repos.d]# date -s "2019-09-24 17:02:30" 2019年 09月 24日 星期二 17:02:30 CST ...
- CentOS 下解决ssh登录 locale 警告
最近登录一台CentOS 6机器,发现每次登录都提示如下警告: -bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF ...
- SUSE12 网卡配置、SSH远程配置、解决CRT密钥交换失败,没有兼容的加密程序
安装好SUSE系统后发现网卡配置与Centos有些差异,多网卡的同学可以参考一下(我的是双网卡) SUSE系统默认第一块网卡自动获取IP,如果是多网卡,需要手动配置,由于我的第一个网卡获取正确无需更改 ...
- spark_shuffle方式的演进过程
spark shuffle有四种方式,分别是 hashshuffle 优化后的hashshuffle sortshuffle bypass 一.hashshuffle与优化 一开始spark的shuf ...
- libevent中最小堆实现算法解析
libevent,一个非常好的c的网络库,最近开始学习并分析下,做个记录.源码选用的1.4版本.因为感觉这版的代码比较精简,也没有太多宏定义,个人感觉适合学习原理. 从哪里开始呢,我选择从一些最简单的 ...
- 异步编程CompletableFuture
多线程优化性能,串行操作并行化 串行操作 // 以下2个都是耗时操作 doBizA(); doBizB(); 修改变为并行化 new Thread(() -> doBizA()).start() ...
- java后端知识点梳理——Redis
redis都支持哪些数据类型?应用场景有哪些? redis支持五种数据类型作为其Value,redis的Key都是字符串类型的. string:redis 中字符串 value 最大可为512M.可以 ...
- vulhub-struts2-s2-007
0x00 漏洞原理 当配置了验证规则 <ActionName>-validation.xml 时,若类型验证转换出错,后端默认会将用户提交的表单值通过字符串拼接,然后执行一次 OGNL ...
- 实验3、Flask数据库操作-如何使用Flask与数据库
1. 实验内容 数据库的使用对于可交互的Web应用程序是极其重要的,本节我们主要学习如何与各种主要数据库进行连接和使用,以及ORM的使用 2. 实验要点 掌握Flask对于各种主要数据库的连接方法 掌 ...
- 如何在CentOS 7上搭建LAMP环境(使用YUM或编译)
什么是LAMP? LAMP是Linux,Apache,MySQL和PHP的缩写. 它是一堆应用程序的堆栈,它们在Web服务器上一起工作以托管网站. 话虽如此,每个程序都有不同的目的: 在LAMP中, ...