首先要介绍一下图形化组件的含义,顾名思义,我们可以首先把它理解为能够让我们看到的各个组件,在计算机屏幕上显然就要以图形的形式彰显出来,这就是图形化组件。比如今天我们要用java来实现一个登陆界面,就要设计一些组件,包括窗体、账号及账号框、密码及密码框、背景图片、登录和注册按钮。接下来我们详细逐步地来说明一下操作过程。

在java中代码都是以类的形式存在,所以首先定义login(登录)类,代码public class login{},然后我们只需要是显示出登陆界面,所以类中先不定义属性,只设置方法,然后在主函数中创建对象再调用方法即可,设置方法的代码为public void showUI(){…}

要实现登陆界面,我们首先要有一个显示各个组件的窗体,在java中有Jframe类,我们可以通过创建JFrame类的新对象jf来获得一个窗体,即代码JFrame jf =new JFrame(),这里值得一提的是需要提前导入模块javax.swing,否则直接调用JFrame类会报错,导入模块的代码为import java.swing.* ,然后我们要设置窗体的大小,这里可以直接调用类JFrame中的方法setSize来设置窗体的宽度和高度(这里值得一提的是这个setSize方法并不是在JFrame中被定义的,而是JFrame从父类中继承过来的),根据电脑分辨率为1920×1080,窗体宽度取450,高度取550,整形数据450和550称为方法的参数,代码为jf.setSize(450,550),窗口的标题用类JFrame中的setTitle方法来设计,参数为字符串常量“登陆界面”,代码为jf.setTitle(“登陆界面”),然后我们就要设置这个登陆界面窗口相对于电脑屏幕居中显示,这里我们要用到setLocationRelativeTo方法,说明一下在java中,我们通过setLocationRelativeTo(Component c)来设置窗体相对于组件的位置,如果组件当前未显示或者c为null,则此窗口将置于屏幕的中央,所以代码为jf.setLocationRelativeTo(null)。然后我们要设置窗体的默认关闭方式,用到setDefaultCloseOperation方法来设置窗体的默认关闭方式,这里讲一下这个方法,当参数为0,那么在我们点击关闭按钮的时候窗体不会被关闭;当参数为1,那么我们再点击关闭按钮的时候,不会释放内存,只是隐藏该界面,没有真正的关闭,还占用资源;当参数为2,那么在我们点击关闭按钮的时候,只有该窗口会关闭;当参数为3,那么在我们点击关闭按钮的时候,直接关闭应用程序,软件的所有窗口都会关闭。这里我们的目的是点击叉号直接关闭应用程序,所以参数选3,代码为jf.setDefaultCloseOperation(3)

接着我们要设置一下窗体组件的布局风格,这里我们用到方法setLayout(),在java中,setLayout()是java中图形界面编程的常用方法,用来设置用户界面上的屏幕组件的格式布局,默认为流式布局,函数声明格式:public void setLayout(LayoutManager manager),可以看到方法的参数数据类型为LayoutManager接口,常见的参数类型有五种,FlowLayout(创建一个新的流布局管理器)、BorderLayout(用指定的组件之间的水平间距构造一个边界布局)、GridLayout(创建具有指定行数和列数的网格布局)、CardLayout(创建一个具有指定的水平和垂直间隙的新卡片布局)、GridBagLayout(网格包布局管理器)这五个子类都继承于LayoutManager接口。我们这里使用流式布局即可,所以创建FlowLayout的新对象(需要提前导入java.awt模块),然后用jf调用setLayout()方法并且参数就用这个新对象即可,代码为FlowLayout flow = new FlowLayout();jf.setLayout(flow)

然后我们要加载背景图片,这里要介绍一下在java语法中的容器的概念,容器就好像一个存放对象的仓库,可以将你的东西存放在一个无限制的仓库中,然后要用的时候可以按规律取出来,在java中容器最常规意思的就是能保存java的对象的类,其实就是一种用来存储数据的数据结构。我们可以把想要添加的对象放到一个容器中,然后在需要的地方(对象)调用方法添加即可,比如常见的add方法。然后我们来介绍一下在java语法中一个加载图片的固定用法,如下图

其中的ImageIcon位于javax.swing包中,可以根据Image绘制Icon,加载图像,并在图像已经加载后才返回,要给控件加图片的话,可以很轻松地使用JLabel label = new JLabel(new ImageIcon("a.png"))来搞定。JLabel组件表示的是一个标签,本身是用于显示信息的(文本、图像或者二者同时显示),创建完的Label对象可以通过Container类中的add()方法加入到容器中。(创建ImageIcon新对象来加载图像,然后传给Jlabel显示,再把Jlabel的新对象加入到容器中即可)还有一个解释,Jlabel等是一些基础组件,它必须置于某个容器里面,类似于窗花、剪纸必须置于窗户的表面,JPanel是一个容器类,相当于大玻璃窗,JFrame是一个顶层的框架类,好比一个窗户的框子,也是一个容器类,这个框子可以嵌入好几个玻璃窗,JFrame自带一个玻璃窗,可以通过语句c =getContentPane()获得该内容窗格,也可以定制一个新的玻璃面板替换原来的自带的玻璃窗,代码如下:Jpanel jp =new Jpanel(),this.setContentPane(jp)。值得一提的是,顶层容器设置尺寸时调用方法setSize,非顶层容器设置尺寸时则调用方法setPreferredSize。

ImageIcon image = new ImageIcon("C:\\Users\\ZhangMaosong\\Pictures\\1.jpg"),Jlabel jla =new Jlabel(image),jf.add(jla),这就给窗体成功添加了背景图片。

然后我们给窗体添加账号框,首先添加“账号:”,同样使用Jlabel的新对象来显示文本,然后把对象加入到容器jf中即可。代码为Jlabel user = new Jlabel(“账号:”),jf.add(user)。接着设置帐号框,这里是一个文本框,我们通过new JTextField()方法创建了默认文本框,代码为JTextField jtf = new JTextField(),然后Dimension是Java的一个类,封装了一个构件的高度和宽度,Dimension类的高度和宽度值是一个整数,表明有多少个像素点,我们创建Dimension类的一个新对象来保存文本框的高度和宽度,然后把它放到容器jtf中(用setPreferredSize方法),代码为Dimension dm = new Dimension(380,25),jtf.setPreferredSize(dm),最后加入到顶层容器jf中即可,代码为jf.add(jtf)。密码框的添加方式和帐号框同理,代码为JLabel user1 = new JLabel("密码:"),jf.add(user1),JTextField jtf1 = new JTextField(),Dimension dm1 = new Dimension(380,25) ,jtf1.setPreferredSize(dm1);jf.add(jtf1)。

然后添加登录和注册按钮,首先添加登录按钮,通过Jbutton类的构造函数JButton(String icon)来建立一个有文字的按钮,代码为JButton jbu = new Jbutton(“登录”),然后加入到容器jf中即可,代码为jf.add(jbu);注册按钮同理,代码为JButton jbu1 = new Jbutton(“注册”),jf.add(jbu1)。

最后设置窗体可见,代码为jf.setVisible(true)。然后在主函数中创建login类的新对象lo,并调用方法showUI即可。效果图如下

Java设计登录界面相关推荐

  1. Java设计登录界面——GUI

    GUI(图形用户界面) 要设计一个简洁的登陆界面,首先需要创建一个窗体,然后在窗体中设置用户名,密码,登录按钮,退出按钮.可以直接在窗体中把需要的元素组件添加进去,也可以创建中间容器,将中间容器再添加 ...

  2. java用户登录界面并连接数据库(教师工资查询)

    java用户登录界面并连接数据库(教师工资查询) 环境 语言:Java:数据库:MySql:环境:JDK8+Eclipse 步骤 1.数据库设计 要求: 实现: 2.实现该教师工资表管理所设计的类和文 ...

  3. java获取界面输入数字_通过JAVA设计 GUI 界面的计算器程序,用户可以通过鼠标依次输入参加计算的数值,进行加、减、乘、...

    通过JAVA设计 GUI 界面的计算器程序,用户可以通过鼠标依次输入参加计算的数值,进行加.减.乘. 2016-08-22 0 0 0 4.0 分 其他 1 积分下载 如何获取积分? 通过JAVA设计 ...

  4. 使用qt设计登录界面初学者_初学者素描:设计登录表单界面

    使用qt设计登录界面初学者 由Bohemian Coding的好伙伴制作的Sketch是界面设计的出色程序. 本入门级教程将向您介绍使用Sketch进行设计. 您将不需要任何程序经验,只需要一些空闲时 ...

  5. java设计ui界面(用户登录)

    目标: Java ui界面设计:把注册界面修改,做成登录界面 直接贴代码: package com.zp1115;import javax.swing.*; import java.awt.*;pub ...

  6. java qq登录界面_用java实现QQ登录界面怎么写

    展开全部 用32313133353236313431303231363533e78988e69d8331333365646263java做QQ登录界面的写法如下: package ch10; impo ...

  7. 使用PYQT5设计登录界面并实现界面跳转

    目录 1 UI登录界面的布局 2 UI登录界面布局对应的代码 3 登录界面和界面跳转完整代码 4 跳转界面代码函数和优化界面代码 5 最终效果 1 UI登录界面的布局 其中,<欢迎使用 XXXX ...

  8. java jsp登录界面设计,用户登录注册系统(基于JSP和Servlet)

    准备工作 开发环境准备 开发工具:eclipse 4.3 技术语言:Java SE 1.7 依赖控制:Maven 3.0.4 服务器:Tomcat 7.0.68 操作系统:Windows 10 搭建一 ...

  9. java web 登录界面案例_【JavaWeb】74:写一个登录案例

    今天是刘小爱自学Java的第74天. 感谢你的观看,谢谢你. 话不多说,开始今天的学习: Java又常被称之为后台开发. 什么叫后台呢?除了后台还有什么前台.前端后端-- 这些概念一大堆,还容易弄混. ...

  10. 用java做登录界面_求用JAVA编写的登陆界面!

    展开全部 这是我刚做的,JAVA布局与其它语言相比难度较大,建议你将两张图片PS成一张图片,做32313133353236313431303231363533e4b893e5b19e313332393 ...

最新文章

  1. java鼠标事件获得键盘值_请问JAVA怎么模拟鼠标和键盘事件[200分]
  2. (char*)x C语言中的和*的详解
  3. 每天一道LeetCode-----将间隔集中有重叠的间隔合并
  4. flashbackup闪回数据库
  5. 西湖大学最年轻博导来了丨93年出生的他,想创造属于中国的“追光”纪录
  6. ios学习笔记——对象归档
  7. view 判断显示 微信_微信小程序WXML页面常用语法(讲解+示例)
  8. getmenuiteminfo无法读取内存_简单科普系列—内存为什么需要组双通道原理及其作用...
  9. acr122 java,ACR122U使用教程
  10. 第十三次博文:教你从立创EDA库导入AD库,保姆级别!
  11. php手机网站制作程序,phpcms制作手机WAP网站模板二次开发教程
  12. 第7章非线性系统的分析-7.1非线性系统的基本概念
  13. 一个月通过软考中级软件设计师
  14. 目前世界最穷的国家是哪一个?
  15. 牛客寒假基础集训营 | Day1 G题—eli和字符串
  16. 广东省计算机免考申请多久可以审核,2019年广东自考免考政策 免考申请条件、时间及流程...
  17. 2018-2019-2 网络对抗技术 20165303 Exp3 免杀原理与实践
  18. 运维派 企业面试题6 防dos攻击
  19. 看不起java_程序员铁律,用Tab的瞧不起用Space键的,用C语言的瞧不起用Java的!...
  20. 机器学习-SVM算法

热门文章

  1. 初识AvalonDock
  2. 离散数学课后习题答案
  3. 技术点:使用vue和element实现地图选点功能
  4. 如何卸载twincat3_TwinCAT软件安装FAQ
  5. DevTools 无法加载源映射
  6. 如何利用python下载电影_一篇文章教会你利用Python网络爬虫获取电影天堂视频下载链接...
  7. links.php是病毒吗,发现了第一只php病毒PHP.Pirus
  8. Ubuntu系统基本操作
  9. 无人驾驶相关文献阅读体会
  10. Pandas数据库数据抽取