Java学习——图形用户界面编程

本文主要介绍了Java Swing中的图形用户界面编程,包括顶层容器如JApplet、JFrame和JDialog,通用容器如JPanel和JScrollPane,以及专用容器JInternalFrame。此外,还讲解了Swing组件如按钮、文本字段和布局管理器,如FlowLayout和BorderLayout的应用。
摘要由CSDN通过智能技术生成

@源程序来自《Java程序设计标准教程(第二版)》邱加永


12.2  Swing容器


12.2.1  顶层容器

顶层容器可以独立存在,位于java.lang.Swing包层次的顶端,Swing顶层容器类包括JApplet、JFrame、JDialog、JWindow,分别从java.awt包中的Applet、Frame、Dialog和Window类直接衍生出来。


JFrame

import javax.swing.JFrame;
/** JFrame使用示例 */
public class JFrameTest {
	public static void main(String[] args) {
		//创建一个顶层容器窗口
		JFrame frame = new JFrame();
		//设置尺寸
		frame.setSize(300,300);
		//设置它的左上角的坐标
		frame.setLocation(300,200);
		//一次性设置尺寸和左上角的坐标
		frame.setBounds(300,200,300,300);
		//设置标题
		frame.setTitle("第一个窗体");
		//设置不允许调整窗口的大小
		frame.setResizable(false);
		//设置它的可见性
		frame.setVisible(true);
	}
}

JDialog


12.2.2通用容器

通用容器是中间容器,它们不能独立存在,必须存放到其他容器中,常用的通用容器有JPanel、JScrollPane、JToolBar、JSplitPane、JTabbedPane。


面板JPanel

import java.awt.Color;
import javax.swing.JFrame;
import javax.swing.JPanel;
/** JPanel使用示例 */
public class JPanelTest {
	public static void main(String[] args) {
		JFrame frame = new JFrame;
		frame.setLayout(null);  //自由布局
		frame.setBounds(300,300,320,320);  //边大小
		frame.setResizable(false);
		frame.setTitle("窗体中添加面板");

		JPanel panel = new JPanel();  //创建面板
		panel.setBounds(60,50,200,200);
		panel.setBackground(new Color(204,204,255));  //面板颜色
		frame.add(panel);  //将面板加到窗体上

		//设置关闭窗口时退出应用程序
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setVisible(true);  //显示窗体
	}
}

滚动面板JScrollPane

import javax.swing.JFrame;
import javax.swing.JScrollPane;
/** JScrollPane使用示例 */
public class JScrollPaneTest {
	public static void main(String[] args) {
		JFrame frame = new JFrame();
		frame.setLayout(null);  //自由布局
		frame.setBounds(300,300,320,320);  //边大小
		frame.setResizable(false);
		frame.setTitle("窗体中添加滚动面板");

		//创建指定滚动策略的面板
		JScrollPane panel = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScorllPane.HORIZONTAL_SCROLLBAR_ALWAYS);
		panel.setBounds(60,50,200,200);
		frame.add(panel);

		frame.setDefau
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值