博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java swing最简单实例(2) 往JFrame里面放一个容器或组件
阅读量:4069 次
发布时间:2019-05-25

本文共 1893 字,大约阅读时间需要 6 分钟。

可以往JFrame里面放的东西有两种,Containers和Components.在jigloo的图形化界面上可以清楚的看到这些

常用的Containers(容器)有这些:

JFrame带标题和关闭按钮的界面
JPanel面板
JScrollPane带滚动条的面板
JSplitPane带分栏的面板
JTabbedPane标签页结构的面板
JDialog对话框

常用的Components(组件)有这些

JButton按钮
JLabel标签(用于显示固定不变的文字
JTextField文本框(用于让用户写入文字)
JRadioButton单选框
JCkeckBox选择框
JComboBox下拉框
JTable表格

添加一个普通的容器或者组件的方法是相同的,都是两个步骤,创建出来,然后加进去。我们在实例(1)的基础上进行这两个操作,给一个空的JFrame加上一个组件

package basicCompoment;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.SwingUtilities;import javax.swing.WindowConstants;public class AddComponent extends JFrame{	public AddComponent(){		initGUI();	}	private void initGUI(){		setVisible(true);		setSize(300,400);		setLocationRelativeTo(null);		setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);				//创建元件		JButton jButton1 = new JButton("jButton1");		//添加元件		add(jButton1);	}	public static void main(String[] args) {		SwingUtilities.invokeLater(new Runnable() {			public void run() {				AddComponent f = new AddComponent();			}						});	}}

这里没有进行布局,只是将组件加进去,所以会显示覆盖整个Frame的一个按钮。

一般来说,可以将对象设为私有成员,在需要定义时创建,在需要加入时加入,可以更方便的在不同函数中对元件进行操作。特别需要注意的是所有的对象必须先初始化才能加入,并且每个对象只能放置在一个地方。即使是两个表现形式完全相同的对象,也必须new两个出来,试图将一个按钮放在两个地方这样的事情是行不通的。

将组件设为私有成员的方式

package basicCompoment;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.SwingUtilities;import javax.swing.WindowConstants;public class AddComponent2 extends JFrame{	//定义变量	private JButton jButton1;	public AddComponent2(){		initGUI();		addComp();	}	private void addComp(){		//初始化		jButton1 = new JButton("jButton1");		//添加元件		add(jButton1);	}	private void initGUI(){		setVisible(true);		setSize(300,400);		setLocationRelativeTo(null);		setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);	}	public static void main(String[] args) {		SwingUtilities.invokeLater(new Runnable() {			public void run() {				AddComponent2 f = new AddComponent2();			}						});	}}

 

转载地址:http://zymji.baihongyu.com/

你可能感兴趣的文章
区块链技术让Yotta企业云盘为行政事业服务助力
查看>>
Yotta企业云盘更好的为媒体广告业服务
查看>>
Yotta企业云盘助力科技行业创高峰
查看>>
Yotta企业云盘更好地为教育行业服务
查看>>
Yotta企业云盘怎么帮助到能源化工行业
查看>>
企业云盘如何助力商业新发展
查看>>
医疗行业运用企业云盘可以带来什么样的提升
查看>>
能源化工要怎么管控核心数据
查看>>
媒体广告业如何运用云盘提升效率
查看>>
企业如何运用企业云盘进行数字化转型-实现新发展
查看>>
司法如何运用电子智能化加快现代化建设
查看>>
iSecret 1.1 正在审核中
查看>>
IOS开发的开源库
查看>>
IOS开发的开源库
查看>>
Jenkins - sonarqube 代码审查
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成(一)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 单机部署(二)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 高可用集群部署(三)
查看>>
Golang struct 指针引用用法(声明入门篇)
查看>>
Linux 粘滞位 suid sgid
查看>>