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 ...
随机推荐
- 浅析UPnP协议
摘要:文章介绍了UPnP结构规范和开发流程,指出:UP nP协议使所有联网的设备实现互联,设备工作不需要传统的驱动程序,便可以实现设备间的 相互控制. 关键词:UPnP协议:开发流程:电子技术:工作 ...
- Docker实践:运行Python应用
本文将使用fig应用编排实现一个python的计数器,并使用web展示. 阅读本文您需要具备以下知识: 1.了解Python 2.熟练Docker基础知识(包括Dockerfile语法) 3.了解Do ...
- Oralce 重建EM服务,OracleDBConsoleOracle
今天打开Oracle ,想进em看看,结果发现OracleDBConsoleOracle服务老是报错: OracleDBConsoleOracle 服务因 2 (0x2) 服务性错误而停止. 搞不懂, ...
- iOS 离屏渲染的研究
GPU渲染机制: CPU 计算好显示内容提交到 GPU,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按照 VSync 信号逐行读取帧缓冲区的数据,经过可能的数模转换传递给显示器显示. G ...
- OpenCASCADE DataExchange DWG
OpenCASCADE DataExchange DWG eryar@163.com Abstract. DWG is a file format created in the 70’s for th ...
- 传智播客--ADO.net--SqlBulkCopy批量插入数据(小白必知)
一般情况下,我们在向数据库中插入数据时用Insert语句,但是当数据量很大的时候,这种情况就比较缓慢了,这个时候就需要SqlBulkCopy这个类. SqlBulkCopy本身常用的函数有这么几个 D ...
- Python第一天 - list\字符串截取
(一)list截取L =['Adam', 'Lisa', 'Bart'] print(L[0:3]) ======>['Adam'(idnex:0), 'Lisa'(index:1), 'Bar ...
- (第九天)DOM事件
addEventListener 使用addEventListner()方法可以为事件目标注册事件处理程序.addEventListner()接受三个参数.第一个是要注册处理程序的事件类型,这个事件类 ...
- 跌倒了,再爬起来:ASP.NET 5 Identity
"跌倒了"指的是这一篇博文:爱与恨的抉择:ASP.NET 5+EntityFramework 7 如果想了解 ASP.NET Identity 的"历史"及&q ...
- 【记录】从客户端()中检测到有潜在危险的 Request.Path 值。
从客户端()中检测到有潜在危险的 Request.Path 值. 错误信息: Application_Error Url: www.cnblogs.com/%E5%BA%.... UserAgent: ...