`
wz94
  • 浏览: 31542 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Swing界面开发总结

阅读更多

一、java的图形界面

 

               1.awt              java.awt

                               jdk1.4之前推出的图形界面,用c/c++编写,跨平台性不好

               2.swing          javax.swing

                               jdk1.4时推出的图形界面,跨平台性好

 

 

二、常用的组件

           

               1.容器组件

                      JFrame               窗体类        最顶级的容器(默认布局为边框布局,不能自己互相添加)

                      JPanel                面板类         最灵活的容器(可以自己互相添加)

 

                2.元素组件

                      JLabel                   标签类

                      JTextField             文本输入框类(可以设置框内字符、输入框长度)

                      JPasswordField     密码输入框类(框内字符会被特定字符代替)

                      JCheckBox            复选框类

                      JComboBox          下拉框类

                      JButton                 按钮类

                     

               容器和组件都是swing包下的类。javax.swing.JFrame

 

三、常用的布局

     

                1.布局类只能用在容器中。设置布局时需用setLayout()

                   BorderLayout                边框布局(将窗体分为上下左右中五个区域,调用时分别.NORTH,.SOUTH,.WEST,.EAST,.CENTER,若未标明表示CENTER,未添加布局时默认为边框布局加在中央)

                    FlowLayout                   流式布局(如同文本文档一样一行一行排列,排列满换行,默认方向为从左向右,可以设置对齐方向)

                    GridLayout                     网格布局(可以设置几列几行,间距)

 

                   这三种都是位于awt包下的类。java.awt.***Layout

 

 

四、简单登录界面的实现

                 

                   1.新建一个xxx类(Login),在类中定义主函数。
                   2.在类中定义一个初始化界面的方法(initUI)
                   3.在初始化界面的方法中,实例化一个顶级容器(JFrame)类的对象。
                   4.设置JFrame对象的属性值(标题,大小,显示位置,关闭退出程序,禁止调整大小,可见,该步完成对一个窗体的创建)
                   5.实例化元素组件对象,将对象添加到窗体上
                   6.在主函数中实例化Login类的对象,用对象名调用初始化界面的方法。

                    注:setDefaultCloseOperation()括号中可选数字,3是关闭时退出程序。0是不关闭。1是隐藏,2是关闭时程序继续工作。

                           setVisible(true)必须放在最后才能显示所有组件。true为可见。

                           setSize()大小为像素点的大小。默认起点为左上角。

五、代码

 

1.简单的登录界面

                 可以用流式布局或者边框布局。

package cn.wz.study0718;
//定义一个登录界面
public class showFrameqq {

	
	//  入口主函数
	 
	public static void main(String[] args) {
		// 实例化showFrameqq类的对象
		showFrameqq showqq = new showFrameqq();
		//调用qq界面的方法
		showqq.initGUI();

	}
	//定义一个qq界面的方法
	public void initGUI(){
		//实例化一个JFrame类的对象
		javax.swing.JFrame jf = new javax.swing.JFrame();
		//设置窗体的标题属性
		jf.setTitle("QQ登录界面");
		//设置窗体的大小属性
		jf.setSize(300,200);
		//设置窗体的位置属性
		jf.setLocation(450,200);
		//设置窗体关闭时退出程序
		jf.setDefaultCloseOperation(3);
		//设置禁止调整窗体的大小
		jf.setResizable(false);
		
		//实例化一个布局类的对象
		java.awt.FlowLayout fl = new java.awt.FlowLayout(); 
		//设置窗体的布局方式为流式布局
		jf.setLayout(fl);
		//实例化一个JLabel标签类的对象
		javax.swing.JLabel jlaName = new javax.swing.JLabel("                                          ");
		//将jlaName对象添加到容器JFrame对象上
		jf.add(jlaName);
		//实例化一个JTextField对象
		javax.swing.JTextField jteName = new javax.swing.JTextField("账号",20);
		//将jteName对象添加到容器JFrame对象上
		jf.add(jteName);
		//实例化一个JLabel对象
		javax.swing.JLabel jlaName2 = new javax.swing.JLabel("注册账号");
		//将jlaName2对象添加到容器JFrame对象上
		jf.add(jlaName2);
		//实例化一个JPasswordField对象
		javax.swing.JPasswordField jpaName = new javax.swing.JPasswordField("请输入密码",20);
		//将jpaName对象添加到容器JFrame对象上
		jf.add(jpaName);
		//实例化一个JLabel对象
		javax.swing.JLabel jlaName3 = new javax.swing.JLabel("找回密码");
		//将jlaName3对象添加到容器JFrame对象上
		jf.add(jlaName3);
		//实例化一个JCheckBox对象
		javax.swing.JCheckBox jchName = new javax.swing.JCheckBox("记住密码");
		//将jchName3对象添加到容器JFrame对象上
		jf.add(jchName);
		//实例化一个JCheckBox对象
		javax.swing.JCheckBox jchName2 = new javax.swing.JCheckBox("自动登录");
		//将jchName3对象添加到容器JFrame对象上
		jf.add(jchName2);
		//实例化一个JCheckBox对象
		javax.swing.JButton jbuName = new javax.swing.JButton("           登             录          ");
		//将jButton对象添加到容器JFrame对象上
		jf.add(jbuName);
		
		jf.setVisible(true);
	}
	

}

 

2.简单的计算器界面

             分析:使用网格布局。

 

package cn.wz.study0718;
//定义一个计算器界面
public class showCalculaterFrame {

	//入口主函数
	public static void main(String[] args) {
		//实例化一个showCalculaterFrame类的对象
		showCalculaterFrame showCal = new showCalculaterFrame();
		//调用计算器界面的方法
		showCal.initGUI();

	}
	//定义一个计算器界面的方法
	public void initGUI(){
		//实例化一个JFrame类的对象
		javax.swing.JFrame jf = new javax.swing.JFrame();
		//设置窗体的标题属性
		jf.setTitle("计算器");
		//设置窗体的大小属性
		jf.setSize(250,350);
		//设置窗体的位置属性
		jf.setLocation(400,200);
		//设置窗体关闭时退出程序
		jf.setDefaultCloseOperation(3);
		//设置禁止调整窗体的大小
		jf.setResizable(false);
		
		//实例化一个JTextField文本框类的对象
		//javax.swing.JTextField jteName = new javax.swing.JTextField(20);
		//将jteName添加到容器JFrame上
		//jf.add(jteName);
		//实例化一个布局类对象
		java.awt.GridLayout gr = new java.awt.GridLayout(5,4);
		//设置窗体的布局方式为网格布局
		jf.setLayout(gr);
		//实例化十九个个JButton对象、一个JTextField对象
		javax.swing.JButton jb1 = new javax.swing.JButton("1");
		javax.swing.JButton jb2 = new javax.swing.JButton("2");
		javax.swing.JButton jb3 = new javax.swing.JButton("3");
		javax.swing.JButton jb4 = new javax.swing.JButton("4");
		javax.swing.JButton jb5 = new javax.swing.JButton("5");
		javax.swing.JButton jb6 = new javax.swing.JButton("6");
		javax.swing.JButton jb7 = new javax.swing.JButton("7");
		javax.swing.JButton jb8 = new javax.swing.JButton("8");
		javax.swing.JButton jb9 = new javax.swing.JButton("9");
		javax.swing.JButton jb0 = new javax.swing.JButton("0");
		javax.swing.JButton jba = new javax.swing.JButton("+");
		javax.swing.JButton jbb = new javax.swing.JButton("-");
		javax.swing.JButton jbc = new javax.swing.JButton("*");
		javax.swing.JButton jbd = new javax.swing.JButton("/");
		javax.swing.JButton jbe = new javax.swing.JButton("=");
		javax.swing.JButton jbf = new javax.swing.JButton("AC");
		javax.swing.JButton jbg = new javax.swing.JButton("sqrt");
		javax.swing.JButton jbh = new javax.swing.JButton("1/x");
		javax.swing.JButton jbi = new javax.swing.JButton(".");
		javax.swing.JTextField jte = new javax.swing.JTextField();
		//将JButton对象、JTextField对象添加到容器JFrame上
		jf.add(jte);
		jf.add(jbf);
		jf.add(jbg);
		jf.add(jbh);
		jf.add(jb1);
		jf.add(jb2);
		jf.add(jb3);
		jf.add(jba);
		jf.add(jb4);
		jf.add(jb5);
		jf.add(jb6);
		jf.add(jbb);
		jf.add(jb7);
		jf.add(jb8);
		jf.add(jb9);
		jf.add(jbc);
		jf.add(jb0);
		jf.add(jbi);
		jf.add(jbe);
		jf.add(jbd);
		
		//设置窗体是否可见
		jf.setVisible(true);
		
		
		
	}

}

 

0
0
分享到:
评论

相关推荐

    JAVA总结之 简单的SWING界面开发

    这篇“简单的SWING界面开发”总结将帮助我们深入理解如何使用Swing来创建用户友好的桌面应用程序。 首先,Swing是Java Foundation Classes (JFC)的一部分,它是对早期AWT(Abstract Window Toolkit)的增强。Swing...

    Swing 界面设计小例子

    在本教程中,我们将探讨Swing界面设计的一些基本概念和实践,通过一个简单的小例子来展示如何创建和定制GUI组件。 首先,Swing提供了一系列组件,如按钮(JButton)、文本框(JTextField)、标签(JLabel)等,用于...

    swing项目应用总结

    总的来说,Swing项目应用总结涵盖了组件的使用、源码的理解和实际开发中的最佳实践。深入研究Swing的日期选择器,不仅可以提升我们的编程技能,还能为开发出更健壮、用户体验更好的桌面应用打下坚实基础。

    使用Java Swing界面实现数据库基本操作

    ### 使用Java Swing界面实现数据库基本操作 #### 一、引言 在软件开发领域,图形用户界面(GUI)是提高用户体验的重要组成部分。Java Swing作为Java平台上的一个强大的GUI工具包,为开发者提供了丰富的组件和功能来...

    Swing图形界面设计

    总结来说,Swing图形界面设计涵盖了从创建窗口、添加组件到布局管理的全过程。通过理解和熟练运用这些基础知识,开发者可以创建出用户友好且功能强大的Java桌面应用。在实际项目中,你可能还需要学习更多高级特性,...

    纯JAVA实现修改本地IP(swing界面版)

    总结起来,"纯JAVA实现修改本地IP(swing界面版)"项目涉及到了Java编程、Swing GUI设计、IP地址处理、文件I/O、事件处理、多线程以及错误处理等多个核心知识点。通过这个项目,开发者不仅可以提升Java编程技能,也能...

    Java swing 知识总结学习笔记

    ### Java Swing 知识总结学习笔记 #### 一、Swing 概述 Swing 是一个用于构建桌面应用程序的 Java 图形用户界面 (GUI) 工具包,它基于 Java Abstract Window Toolkit (AWT) 构建而成。Swing 提供了更丰富的组件集...

    JavaSwing程序开发

    ### Java Swing程序开发详解 #### 一、引言 Swing是Java中用于构建图形用户界面(GUI)的一个组件集,它构建在Java的基础之上,并且提供了丰富的组件和强大的功能,使得开发者能够创建出美观且功能丰富的GUI应用。与...

    Java图形界面开发-awt、swing、swt

    Java提供了多种库来支持图形界面开发,包括AWT(Abstract Window Toolkit)、Swing和SWT(Standard Widget Toolkit)。这些库各自有不同的特点和应用场景。 - **AWT**:这是Java最早提供的图形界面工具包,主要通过...

    基于Swing界面的单机版斗地主

    【基于Swing界面的单机版斗地主】是一款使用Java编程语言开发的桌面应用程序,主要利用了Swing库来构建用户界面。Swing是Java提供的一个轻量级的图形用户界面(GUI)工具包,它允许开发者创建美观且功能丰富的窗口...

    swingweb 开发

    它结合了 Java Swing 的界面设计能力和 Web 技术的交互性,使得开发者能够开发出既具有丰富的图形用户界面(GUI)又能在网络上运行的应用程序。Swingweb 旨在简化开发流程,提高应用性能,并增强用户体验。 #### 2....

    基于swing的本地经验总结系统

    【Swing基础】 ...它涉及到了Swing的基本组件、事件处理机制、界面定制以及数据存储等多个方面,是学习Swing开发的好实例。对于想要提升Java GUI编程能力的开发者,深入研究这个项目源码将大有裨益。

    javaswing窗体开发参考文档

    ### Swing窗体开发中的菜单和工具栏知识点详解 #### 一、引言 在Java Swing框架中,菜单和工具栏是构建用户界面不可或缺的一部分。它们不仅提供了丰富的功能,还极大地提高了开发者的效率。本文档旨在详细介绍...

    swing界面设计之JTree

    ### Swing界面设计之JTree...以上内容总结了从Swing界面设计之JTree相关的知识点,包括如何使用Spring框架和Swing开发GUI应用、数据验证模块的设计与实现、JTree的各种操作技巧以及JavaHelp 2.0的帮助系统构建方法。

    用swing制作的简单图书管理系统

    在IT领域,开发用户友好的图形用户界面(GUI)是提升软件易用性的重要手段。Java的Swing库为开发者提供了丰富的组件和工具,使得创建桌面应用程序变得相对简单。本系统——"用Swing制作的简单图书管理系统"就是基于...

    java Swing 设计数据库前台界面

    Java Swing 是Java GUI(图形用户界面)开发的一个重要工具,主要用于构建桌面应用程序。在本项目“java Swing 设计数据库前台界面”中,我们利用Swing组件来创建一个与数据库交互的用户界面,尤其是实现了JTable...

    一本糊涂账-基于Swing和JDBC开发的图形界面桌面应用

    本项目是基于Swing和JDBC开发的图形界面桌面应用,涵盖了J2SE的绝大部分基础知识,通过这个项目能运用和锻炼几乎大部分的J2SE知识和技能。 基础内容: 面向对象 字符串数字 日期 中级内容: 异常 ,集合,JDBC,...

    纯swing开发的界面

    总结来说,这个项目涉及到了Swing的GUI开发,观察者模式的使用及其局限性,以及命令模式作为可能的替代方案。同时,项目还涵盖了代码重构的重要实践,以提升软件质量。在实际开发中,理解并恰当运用这些设计模式对于...

    eclipse VE 插件 swing可视化编程

    然而,纯代码编写Swing界面可能较为复杂,需要理解各种组件、布局管理器和事件处理机制。Eclipse VE插件则将这一过程转化为直观的图形操作,使得开发者可以通过图形化界面快速搭建Swing应用的外观。 三、Eclipse VE...

Global site tag (gtag.js) - Google Analytics