Swing组件是java中的图形组件,用来开发图形界面的。
1.常用的两类组件
1)容器组件(可以存放其他组件)
如: JFrame 窗体类
JPanel 面板类
JMenuBar 菜单栏类
JMenu 菜单类
2)元素组件
如: JLable 标签类
JButton 按钮类
JTextField 输入框类
JPasswordField 密码输入框类
JCheckBox 复选框类
JComboBox 下拉框类
JMenuItem 菜单选项类
2.常用的布局
BorderLayout 边框布局
FlowLayout 流式布局
GridLayout 网格布局
其实每个容器都有默认的布局方式
JFrame 默认边框布局
JPanel 默认流式布局
3.界面实现基本步骤
1)生成一个类,在类中定义主函数和初始化界面的方法
2)在初始化界面的方法中实例化一个窗体对象
3)设置窗体的各项基本属性
4)设置窗体的布局方式
5)实例化需要的容器和元素组件对象并添加到相应容器上
6)在主函数中实例化类的对象,调用初始化界面的方法
下面以一个实例来运用这些知识帮助学习:
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
public class QQ extends JFrame{
/**程序入口
* @param args
*/
public static void main(String[] args) {
QQ q=new QQ();
q.initUI();
}
/**
* 初始化界面方法
*/
private void initUI() {
//设置窗体的属性值
this.setLocation(400, 200);//设置显示位置
this.setSize(378, 291);//设置大小
this.setTitle("QQ登陆界面");//设置标题
this.setDefaultCloseOperation(3);//设置关闭方式
this.setResizable(false);//设置窗体是否可以最大化
// 将背景图片添加到layeredPane
ImageIcon img = new ImageIcon("images/beijing.png");
JLabel imgLabel = new JLabel(img);
this.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE));
imgLabel.setBounds(0,0,img.getIconWidth(), img.getIconHeight());
Container p4=this.getContentPane();
//实例化一个在北边的JLabel
JLabel jlb = new JLabel();
jlb .setPreferredSize(new Dimension(378,109));//设置标签的大小
//添加标签到窗体的北边
this.add(jlb,BorderLayout.NORTH);
//实例化一个在西边的JPanel
JPanel panelWest = new JPanel();
panelWest.setLayout(new FlowLayout(FlowLayout.RIGHT));
panelWest.setPreferredSize(new Dimension(105,0));
JLabel jlaImage2 = new JLabel(new ImageIcon("images/touxiang.png"));
panelWest.add(jlaImage2);
//添加panelWest到窗体的西边
this.add(panelWest,BorderLayout.WEST);
//实例化一个中央JPanel
JPanel panelCenter = new JPanel();
panelCenter.setLayout(new FlowLayout( FlowLayout.LEFT,10,5));
JComboBox jcb = new JComboBox();
jcb.setEditable(true);
jcb.setPreferredSize(new Dimension(170,25));//设置组件的大小
JLabel jbuReg = new JLabel("注册账号");
jbuReg.setFont(new Font("宋体",0,14));//设置显示的字体样式
JPasswordField jpf = new JPasswordField();
jpf.setPreferredSize(new Dimension(170,25));//设置组件的大小
JLabel jbu = new JLabel("找回密码");
jbu.setFont(new Font("宋体",0,14));
JCheckBox jcb1 = new JCheckBox("记住密码");
jcb1.setFont(new Font("宋体",0,13));
JCheckBox jcb2 = new JCheckBox("自动登录");
jcb2.setFont(new Font("宋体",0,13));
panelCenter.add(jcb);
panelCenter.add(jbuReg);
panelCenter.add(jpf);
panelCenter.add(jbu);
panelCenter.add(jcb1);
panelCenter.add(jcb2);
this.add(panelCenter,BorderLayout.CENTER);
//实例化一个放置在窗体南边的面板
JPanel panelSouth=new JPanel();
JButton btn = new JButton(new ImageIcon("images/denglu.png"));
btn.setPreferredSize(new Dimension(145,30));
panelSouth.add(btn);
this.add(panelSouth,BorderLayout.SOUTH);
//将个个组件设置透明
jcb1.setOpaque(false);
jcb2.setOpaque(false);
((JPanel) p4).setOpaque(false);
panelWest.setOpaque(false);
panelCenter.setOpaque(false);
panelSouth.setOpaque(false);
//设置窗体显示
this.setVisible(true);
}
}
- 大小: 178.5 KB
分享到:
相关推荐
3.熟悉Java AWT、swing组件的功能; 4.掌握常用组件的事件接口; 5.会应用AWT、swing组件进行应用程序设计。 二、实验内容 设计windows计算器图形用户界面(如下图所示)。 AWT、swing组件应用程序设计设计(完成...
对JAVA中Swing组件有一个很好的讲解,并通过实际的例子给读者一个清晰的认识和掌握!
Swing组件(javax.swing.-) 面板:JPanel 标签化窗格:JTabbedPane 拆分窗格:JSplitPane 滚动窗格:JScrollPane 工具栏:JToolBar 桌面窗格:JDesktopPane 内部框架:JInternalFrame 分层窗格:JLayeredPane ...
普通swing组件用法
Java Swing组件写的游戏客户端Java Swing组件写的游戏客户端 Java Swing组件写的游戏客户端Java Swing组件写的游戏客户端 Java Swing组件写的游戏客户端Java Swing组件写的游戏客户端 Java Swing组件写的游戏客户端...
JIDE Common Layer是一套很不错的Swing组件类库,它JIDE软件公司其他产品的基础,于2007年4月开源,在其开源之前是JIDE商业软件中的一部分。它包含将近10万行代码,超过30个的Swing组件和工具。 压缩包中含有对应的...
Java Swing 组件全演示
javaswing组件大全.pdf
Java Swing 组件全演示源代码.zip
Java的Swing组件实现的计算器,Java入门学习案例,源码
常用Swing组件GUI设计,
详细的讲述了java。swing包的各个组件的用法与事件处理
swing 组件 demo
常用Swing组件一览表 新手学习的Swing组件 可以节约点时间
swing组件的使用,以及swing都包含了什么都有详细的介绍
java程序设计——Java坦克大战游戏源码,基于Spring Boot,JDK8,Swing组件开发 ## 介绍 ###### Java坦克大战游戏,基于Spring Boot,JDK8,Swing组件开发 ## 安装执行 ###### 1、下载源码,在根目录执行maven...
Java Swing 组件 一览表
是真的 去北京实训老师给的 说是他总结的