欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java图形界面

程序员文章站 2023-12-23 19:30:27
...

java 有一个强大的的API(Application Programming Interface应用程序编程接口))类,利用这些API类我们可以完成许多功能,今天我们要做的是图形界面的制作。

图形界面要用什么来实现呢?先介绍Swing组件,它的特点是可插入外观组件,同时是“轻量级组件”(是不依赖于操作系统的语言,可以在任何平台上运行,相反“重量级组件”即AWT组件,依赖于本地平台)

在应用swing组件或者awt前,应导入包

import javax.swing.*;
import java.awt.*;//*表示任何以其为前缀的API类

  • 常用的swing组件分为以下几部分:

窗体容器组件类:JFrame类 *容器

常用面板:JPanel面板可以聚集一些组件类布局,需要明确的是面板也是一种容器,一般情况我们通常定义多个JPanel面板对象,添加到一个JFrame类对象容器中。

元素组件类:用来显示图片或文字,接受输入的

{

JLabel类:标签元素组件类,可以用来显示图片,文字信息

JButton类:按钮元素组件类,用来显示文字图片,可以点击

JTextField类:文本输入框元素组件类,用来接受用户输入的信息,然后可以将其显示出来

JPasswordField类:密码输入框元素组件类,用来接受用户输入的信息,然后可以以特定的符号显示出来,比如‘*’,达到密码的安全性。

JRadioButton类:单选按钮组件类,显示一个圆形图标,圆形图标旁可以附加一些说明文字,当用户选择某个按钮之后,按钮组中的其他按钮将被自动取消。

按钮组使用ButtonGroup定义,然后将JRadioButton对象添加到按钮组中。

JCheckBox类:复选框元素组件类,提供一个选择框,然后在选择框后还可以有相应的图片文字信息,如 【选择框】 记住密码

}

辅助类:帮助组件完成某一个特定的功能

{

Dimension类:封装组件宽度高度类,可以通过组件对象.setPreferredSize(new Dimension(width,hight))来控制组件的大小,

ImageIcon类:图片类,可以用来加载磁盘上的图片。使用方法为ImageIcon image=new ImageIcon("图片地址") 注:如F:\自学视频\java教学视频,要将\变为两个才可以即F:\\自学视频\\java教学视频

FlowLayout类:流式布局类(JPanel组件默认的布局类:流式居中布局),即从左至右,从上至下的布局类

BorderLayout类:边框布局类(JFrame组件的默认布局类),即分为东南西北

GridLayout类:网格布局类,将容器划分为网格,所以组件可以按行和列进行排列,在网格布局中,每一个组件的大小都相同,实例化的写法为:

GridLayout(int rows,int columns,int horizGap,int vertGap)
horizGap为网格之间的水平距离,vertGap为网格之间的垂直距离

}

另外还有一些拓展类,有些地方能够起到很好的效果:

JTextPanel类 : 是一个可以编辑和显示html,rtf和普通文本的富文本组件,能实现的功能较多,使用方法为JTextPane中插入文字和图片_沂东旧客_新浪博客

JComboBox类是一个组件,它结合了一个按钮或可编辑字段与下拉列表,使用方法为:

Swing JComboBox - Swing

有了这些基础知识,下面我们来讲

  • 具体的代码实现步骤:
import javax.swing.*;
import java.awt.*;//一定要将这两个包导入进去
public class DrawFrame{
   public static void main(String args[]){
//实例化JFrame 对象    
JFrame frame=new JFrame();
frame.setSize(400,700);//设置大小
frame.setTitle("图形界面");//设置标题
frame.setDefaultCloseOperation(3);//界面关闭方式
frame.setLocationRelativeTo(null);//显示的界面居中
frame.setResizable(false);//设置能否改变大小
frame.setVisible(true);//界面的可见性
}
}

以上是创建窗体的步骤。得到的结果是:

Java图形界面

下面我们接着来介绍添加标签类,图标类的具体方法:

		// 实例化元素组件类,然后将对象添加到窗体可见
		//实例化ImageIcon类的对象,从磁盘中提取出图片
		javax.swing.ImageIcon img=new javax.swing.ImageIcon("F:\\图形界面\\qq.jpg");
		//实例化JLbel类的对象,用来显示img
		javax.swing.JLabel labImg=new javax.swing.JLabel(img);
		//将JLabel类对象添加到窗口上
		frame.add(labImg);
		
		//使用JLbel类显示文字
		javax.swing.JLabel labName1=new javax.swing.JLabel("账号:");
		frame.add(labName1);
		
		//实例化文本框
		javax.swing.JTextField account=new javax.swing.JTextField();
		//封装组件的大小和高度   Dimentsion类的对象的实例化  dim对象可以重复利用
		java.awt.Dimension dim=new java.awt.Dimension(310,30);
		//设置组件的首先大小为Dimension类的对象
		account.setPreferredSize(dim);
		frame.add(account);
		
		//显示密码及对应文本框 利用JLabel类和JPasswordField类
		javax.swing.JLabel labName2=new javax.swing.JLabel("密码:");
		frame.add(labName2);
		javax.swing.JPasswordField password =new jjavax.swing.JPasswordField();
		password.setPreferredSize(dim);
		frame.add(password);
		
		//利用JCheckBox类显示记住密码 和自动登录窗口
		javax.swing.JCheckBox checkbox1=new javax.swing.JCheckBox("   记 住 密 码");
		java.awt.Dimension box=new java.awt.Dimension(150,150);
		checkbox1.setPreferredSize(box);
		frame.add(checkbox1);
		javax.swing.JCheckBox checkbox2=new javax.swing.JCheckBox("   自 动 登 录");
		checkbox2.setPreferredSize(box);
		frame.add(checkbox2); 
		
		//利用JButton类 设置窗口登录
		javax.swing.JButton button=new javax.swing.JButton("登录");
		java.awt.Dimension dimbutton=new java.awt.Dimension(150,80);
		button.setPreferredSize(dimbutton);
		frame.add(button);

运行以上代码得到的结果是:

Java图形界面

就这样我们完成了图形界面的绘制,当然这些记住密码,自动登录的选项,密码账号的输入,登录按钮没有任何的其他功能,要想其实现真正意义上的登录,敬请关注接下来会介绍的java 监听器的使用方法。

上一篇:

下一篇: