JavaDailyReports10_10
1.4.2 键盘事件的处理
KeyListener 接口实现了处理键盘事件 KeyEvent 对象描述键盘事件的相关信息。
KeyListener 接口有三个方法:KeyPressed KeyReleased KeyTyped 编写键盘接听器类的时候既可以实现KeyListener接口也可以继承类 KeyAdapter。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_①_1
Swing组件界面设计
Swing 的顶层容器有JFrame 和 JDialog;
JFrame 对象不可以直接调用add 和 setLayout 方法来设置布局信息,每一个JFrame 对象都有一个与之对应的Container类的对象,默认BorderLayout。 可以通过调用 getContentPane 方法获得对应的内容面板,也可以
通过setContentPane(Container contentPane) 来重新设置内容面板。
JDialog 是对话框类
1 package awt;
2 import java.awt.Color;
3 import java.awt.Container;
4 import java.awt.event.ActionEvent;
5 import java.awt.event.ActionListener;
6
7 import javax.swing.JButton;
8 import javax.swing.JDialog;
9 import javax.swing.JFrame;
10 import javax.swing.JLabel;
11 import javax.swing.SwingConstants;
12 import javax.swing.WindowConstants;
13
14 class MyJDialog extends JDialog{
15 public MyJDialog(MyFrame_0 frame) {
16 // TODO Auto-generated constructor stub
17 super(frame,"第一个JDialog窗体",true);
18 Container container = getContentPane();
19 container.add(new JLabel("这是一个对话框"));
20 setBounds(100,100,200,120);
21 }
22 }
23 public class MyFrame_0 extends JFrame{
24
25 public static void main(String[] args) {
26 // TODO Auto-generated method stub
27 new MyFrame_0();
28 }
29
30 public MyFrame_0() {
31 // TODO Auto-generated constructor stub
32
33 Container container = getContentPane();
34 container.setLayout(null);
35 JLabel jl = new JLabel("这是一个JFrame窗体");
36 jl.setHorizontalAlignment(SwingConstants.CENTER);
37 container.add(jl);
38 JButton bl = new JButton("弹出对话框");
39 bl.setBounds(10,10,100,50);
40 bl.addActionListener(new ActionListener() {
41
42 @Override
43 public void actionPerformed(ActionEvent e) {
44 // TODO Auto-generated method stub
45 new MyJDialog(MyFrame_0.this).setVisible(true);
46 }
47 });
48 container.add(bl);
49 setBackground(Color.white);
50 setVisible(true);
51 setSize(200,120);
52 setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
53 }
54 }
JavaDailyReports10_10的更多相关文章
随机推荐
- 微服务架构下 CI/CD 如何落地
本文系云原生应用最佳实践杭州站活动演讲稿整理.杭州站活动邀请了 Apache APISIX 项目 VP 温铭.又拍云平台开发部高级工程师莫红波.蚂蚁金服技术专家王发康.有赞中间件开发工程师张超,分享云 ...
- MySQL数据库入门学习
一. 前言 作为一名大二在校生,因为正在学习网页设计,考虑到后台问题,所以便自学了数据库,可能给大家总结的不是很全,但是一些必要的点肯定会讲到.现在市场上有很多图形化的数据库, 二. MySQL基础知 ...
- 从JMM透析volatile与synchronized原理,图文并茂
在面试.并发编程.一些开源框架中总是会遇到 volatile 与 synchronized .synchronized 如何保证并发安全?volatile 语义的内存可见性指的是什么?这其中又跟 JM ...
- 大厂是如何用DevCloud流水线实现自动化部署Web应用的?
DevUI是一支兼具设计视角和工程视角的团队,服务于华为云DevCloud平台和华为内部数个中后台系统,服务于设计师和前端工程师. 官方网站:devui.design Ng组件库:ng-devui(欢 ...
- PyQt(Python+Qt)学习随笔:QMainWindow的splitDockWidget方法将QDockWidget停靠窗分割排列
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 主窗口的splitDockWidget方法用于将一个停靠窗占据的空间分 ...
- Python中sort、sorted的cmp参数废弃之后使用__lt__支持复杂比较的方法
Python2.1以前的排序比较方法只提供一个cmp比较函数参数,没有__lt__等6个富比较方法, Python 2.1引入了富比较方法,Python3.4之后作废了cmp参数.相应地从Python ...
- js- for in 循环 只有一个目的,遍历 对象,通过对象属性的个数 控制循环圈数
for in 循环会返回 原型 以及原型链上面的属性,不会打印系统自带的属性 var obj ={ name:'suan', sex :'male', age:150, height:185, ...
- .NET Core集成SkyWalking+SkyAPM-dotne实现分布式链路追踪
.NET Core集成SkyWalking+SkyAPM-dotnet实现分布式链路追踪 SkyWalking是一款APM(应用性能管理),其他的还有Cat.Zipkin.Pinpoint等. 随着微 ...
- 利用IDEA把Java项目打成jar包
第一步:按如下步骤或Ctrl+Shift+Alt+S打开 Project Structure第二步:第三步:选择要执行的文件, 依次选择项目, main方法所在的文件, 保存如果出现以下错误:则根据 ...
- GYM100526I Interesting Integers
题目大意 定义一种 \(Gabonacci\) 数列: \[\begin{array}{c} G_1=a\\ G_2=b\\ G_i=G_{i-1}+G_{i-2} \end{array} \] 给定 ...