JAVA GUI 简记
来源:互联网 发布:淘宝旺旺号名字大全 编辑:程序博客网 时间:2024/06/08 16:59
简单记录下页面中用到的GUI组件,方便查阅,swing为主
java的GUI大致可以分为容器和控件两个部分,其中控件像按钮,文本框用来实现某种特定功能,而容器则是用来盛放各个控件还有其它容器,多用于布局。
窗口容器:
理论上图形用户界面都需要一个基础的窗口组件(有红叉叉的那种),窗口容器不能相互包含。
JFarme是SWing 里的窗口容器,其构造函数就是生成一个窗口(“带题目”)。
一般生成窗口时都会先继承该类然后实现,要注意创建出的窗口对象还几乎没有任何属性(包括位置,大小,可见性,关闭按钮云云),都要手动实现
public class MyFrame extends JFrame { JMenuBar bar; //上菜单栏 JMenu Menu1,Menu2; JMenuItem item1_1,item2_1; JPanel JP1,JP2; JTextArea tA1,tA2,tA3; JTextField tF1; JButton JB1; public MyFrame ()//该类的构造方法 { super("电影查询"); //实现父类构造方法 this.setSize(800, 600); //设置窗口大小 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //点击叉号时关闭窗口并结束程序 this.setLocation(500, 200); //设置窗口位置(左上角) this.setVisible(true); //设置为可见(不写看不见...) }}
- 普通容器
JPane是一个基础容器,仅仅用于布局划分,还有一个带滚动条的容器JScrollPane;
多数容器的构造方法都可以选择布局管理器或者内部组件,实例化后使用add()方法添加内部组件 - 布局管理器
几乎所有的组件都可以用setLocation来设置其在容器中的位置,但如果想要快速的进行布局,就要使用布局管理器
FlowLayout:浮动布局管理器
BorderLayout:边框布局管理器
GridLayout:网格布局管理器
CardLayout:卡片布局管理器
GridBagLayout:网格包布局管理器
添加了布局管理器的容器在add方法时可以使用组件之外的参数来确定插入组件的位置 - 文本框和文本域
需要文本显示时使用JTextArea或JTextfiled来创建文本区域(分别是一行和多行的区别)
使用setEditable来设置是否接受输入。可以用来区分输入框和显示框 - 按钮
Button,JButtton
public void showMessage() { //中部显示栏 JP1 = new JPanel(new GridLayout(1, 3)); JP2 = new JPanel(new FlowLayout()); this.add(JP1,"Center"); this.add(JP2, "South"); tA1 = new JTextArea();tA2 = new JTextArea();tA3 = new JTextArea(); tA2.setBackground(Color.blue); JP1.add(new JScrollPane(tA1));JP1.add(new JScrollPane(tA2));JP1.add(new JScrollPane(tA3)); tA1.setEditable(false);tA2.setEditable(false);tA3.setEditable(false); tA1.setText("jhahhajdf"); //下部状态栏 tF1 = new JTextField("搜索时间", 60); tF1.setEditable(false); JP2.add(tF1); JB1 = new JButton("保存为文件"); JB1.setEnabled(false); JP2.add(JB1); this.setVisible(true); }
- 上菜单栏
菜单栏的实现需要三个对象JMenuBar,JMenu,JMenuItem
JMenuBar是创建菜单域(菜单栏容器)
JMenu是其中具体菜单按钮
JMenuItem是每一个菜单中的选项
层层嵌套,声明后用add添加
public void showContrl() { //添加上菜单栏 bar = new JMenuBar(); this.add(bar,"North"); Menu1 = new JMenu("启动"); Menu2 = new JMenu("配置"); bar.add(Menu1); bar.add(Menu2); item1_1 = new JMenuItem("启动1"); item1_1 = new JMenuItem("启动2"); Menu1.add(item1_1); item2_1 = new JMenuItem("配置1"); item2_1 = new JMenuItem("配置2"); Menu2.add(item2_1);// this.setVisible(false);// this.setVisible(true); }
阅读全文
0 0
- JAVA GUI 简记
- Java Applet使用简记
- Java网络编程简记
- java NIO简记
- Java 泛型简记
- Java正则表达式简记
- Java Applet使用简记
- 《Java虚拟机》学习简记
- 简记
- 简记
- 简记
- 简记
- 简记
- java数据类型内存分配简记
- java泛型学习简记
- Java GUI
- Java GUI
- Java GUI
- 9BRunning Student
- js调用百度GPS定位
- 使用Java爬虫当数据后台的资源网站搭建
- HTTP协议
- Precision-Recall
- JAVA GUI 简记
- 【剑指offer】栈的压入、弹出序列
- Boost1.62.0 + VS2015 配置
- Spring(二)装配Bean(注入)
- thinkphp控制器数据赋值给模板js
- c语言:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数
- ECOMP已经开源成功,这次AT&T准备推动白盒路由操作系统DNOS
- SQL语法及重要的命令
- 四元数完全解析及资料汇总