luogg_java学习_13_GUI
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用.
**转载请注明 出自 : luogg的博客园 ** 谢谢配合!
GUI
容器
JFrame , JPanel , JScrollPane
组件
JButton按钮 , JLable文字 , JTextFiled但行文本框 , JTextArea多行文本框 ,JRadioButton单选按钮 , JCheckBox复选按钮 , JComboBox下拉列表.
JFrame窗口
- setVisible(true): 设置窗体可见
- setLocationRelativeTo(null);窗体居中显示
- setResizable(false);设置窗体不可缩放
- setLayout(null);绝对定位
- setBackground(Color.CYAN);设置容器的背景颜色
- 添加WindowListener监听器,复写windowClosing方法,System.exit(0)设置窗体自动关闭
JScrollPane滚动条
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(180, 100, 390, 300);
jPanel.add(scrollPane);
//设置自动出现
scrollPane.setHorizontalScrollBarPolicy(
JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
scrollPane.setVerticalScrollBarPolicy(
JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
scrollPane.setViewportView(testContent);//行文本框添加滚动条
JButton按钮
setEnabled(false);默认不可点击
setBounds(x,y,width,height);设置绝对定位的xy和宽高
getText();返回按钮的文字
JLable文字
setFont(new Font("楷体",Font.PLAIN,15));设置文字字体,
setForeground(Color.RED);设置文字颜色
JTextFiled单行文本域
setEditable(false);设置文本域不可以编辑
setText();/getText();
setColumns();设置显示长度
JTextArea多行文本域
setColumns();/setRows();设置行列
textArea.setLineWrap(true);自动换行:
JRadioButton单选按钮
JRadioButton(String str);创建一个单选按钮, 并指定其文字
isSelected();返回是否被选中
setSelected(boolean b);设置是否被选中
ButtonGroup group = new ButtonGroup();
group.add(answerA);group.add(answerB);//将单选按钮ABCD放到按钮组中
JCheckBox复选按钮
方法和单选差不多
ComboBox下拉列表
addItem(String str);添加下拉项,也可以在创建comboBox的时候直接设置
setEditable();设置是否可用
getItemAt(int Index);获取对应索引下拉项
布局管理器
FlowLayout流式布局
BorderLayout
绝对定位布局JFrame.setLayout(null); setBounds(x,y,width,height);
事件监听器
事件处理类所在包:java.awt.event
事件源(组件):谁发生的
事件(event):发生的动作
事件处理者(Listener):谁时时刻刻的 盯着 事件源,注意事件源的一举一动
编程步骤:
1)创建组件对象,如
JFrame jframe = new JFrame();
2)创建一个事件处理类,它实现某种监听器接口
class DoJFrame implements WindowListener{…}
3)将监听器类对象注册到组件对象上
buttonOK.addActionListener(new DoJFrame ());
或者直接组件addXXXLinseter(){}
常用事件
窗口事件:WindowEvent 对应的监听者 WindowListener
点击事件:ActionEvent 对应的监听者 ActionListener
更换java图标
ImageIcon img = new ImageIcon("imgs/luo.png");
jFrame.setIconImage(img.getImage());
怀念一下自己的项目
luogg_java学习_13_GUI的更多相关文章
- luogg_java学习_10_异常_反射
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 异常_反射 异常 异常就是导致程序中断执行的一段指令流 ...
- luogg_java学习_12_线程
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 线程 程序.进程.线程的概念 程序:我们用程序设计语言 ...
- luogg_java学习_09_泛型_集合
这篇博客总结了半天,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 , 泛型 泛型介绍 1).类内部的属性的类型可以由外部决定: 2) ...
- luogg_java学习_08_设计模式_API
这篇博客总结了1天整,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 , 设计模式 在长期开发过程中,为了解决某些固定问题, 总结出的 ...
- luogg_java学习_07_抽象类_接口_多态学习总结
这篇博客总结了半天,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 , 抽象 一种专门用来做父类,被继承的. (模板) 格式: abs ...
- luogg_java学习_06_面向对象特性之封装和继承
这篇博客总结了1天,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 , 因为前不久偶然发现某网站直接复制粘贴我的博客,交谈之后他们修改 ...
- luogg_java学习_05_面向对象(方法和类)
这篇总结断断续续写了2天,内容来自Oracle java8编程入门官方教程和课外搜索总结,希望自己以后返回来看的时候都懂,也希望可以起到帮助初学者的作用. 转载请注明 出自 luogg的博客园 , 因 ...
- luogg_java学习_04_数组
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 数组 数组是多个相同类型数据的组合 //1.定义数组 ...
- luogg_java学习_03_流程控制及循环结构
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 程序流程控制 顺序结构 分支结构:if-else,sw ...
随机推荐
- 使用CSS使内容垂直居中的N中方法。
使用css+div使页面内容水平居中的方法大家并不陌生,那么如何使内容垂直居中呢? OK,下面进入正题,不如我们使用做高中数学题时经常用的思想:分情况讨论. 1.当待垂直居中的DIV高宽为已知时: ...
- Unit Testing with NSubstitute
These are the contents of my training session about unit testing, and also have some introductions a ...
- 企业IT管理员IE11升级指南【4】—— IE企业模式介绍
企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...
- 微软CMS项目 Orchard 所用到的开源项目
研发了Orchard一年左右了,时常遇到瓶颈,总觉得力不从心,其实并不是基础不够,关键还是概念性的东西太多,一会儿这个概念名词,一会那个,关于Orchard的技术文档也的确很少,每次看起来总是焦头烂额 ...
- Rxjava异常处理
异常处理 在Rxjava订阅的Observable有时会抛出异常,在RxJava中有两大类策略,一个是准备备用的Observable,在发生异常时将subscriber订阅到新的Observable上 ...
- How to Use Android ADB Command Line Tool
Android Debug Bridge (adb) is a tool that lets you manage the state of an emulator instance or Andro ...
- SSIS Design1: 源数据提取
数据量的大小由两个方面决定:行的宽度和数据行的数量,为了减少ETL运行的时间,可以从源数据的提取上做优化,从数据源的输入上控制数据的质量和大小,减少转换和IO. 一,减少行的宽度 1,只加载需要的数据 ...
- vue小总结
以下是我在使用vue过程中自己对vue的一些小总结,希望对学习vue的亲们能有所帮助: 1. http的post请求: this.$http({url: '/someUrl', method: ' ...
- TextView跑马灯效果
转载:http://www.2cto.com/kf/201409/330658.html 一.只想让TextView显示一行,但是文字超过TextView的长度怎么办?在开头显示省略号 android ...
- java面试知识(来自牛客网)
接口和抽象类的区别是什么? 接口和抽象类的区别是什么? Java提供和支持创建抽象类和接口.它们的实现有共同点,不同点在于:接口中所有的方法隐含的都是抽象的.而抽象类则可以同时包含抽象和非抽象的方法. ...