提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
** 我们首先引入界面开发的相关概念
1 .界面开发框架: 界面开发 接口与监听器 图形图像项目
2.界面开发包:包:用来给代码分类的
包名:全小写,用点. 来分隔不同文件夹包 java.awt
早期的界面开发包: 保留使用 颜色 尺寸 布局类 javax.swing
升级之后的界面开发包: 所有的类都可以使用 主要是可视化组件类
**
界面实现思路
1:创建窗口 设置窗体的属性
2:设置 布局方式
3:创建组件对象 设置组件的属性与内容
4:将组件对象加载到窗体对象上
操作时需要有一个界面 JFrame、输入框 JTextFiled、密码输入框JPasswordField、按钮 JButton,图标图片ImageIcon等系统自带类。
实现登陆界面
代码如下(示例):
import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class Login {
// 定义Login类
public static void main(String[] args) {
Login login = new Login();
login.initUI(); //在Login类中调用 initUI()方法
/*
Login.intUI();
*/
}
public static void initUI() {
JFrame frame = new JFrame(); //实例化JFrame对象
frame.setTitle("Login");// 设置窗体的标题
frame.setSize(400, 650);// 设置窗体的大小,单位是像素px
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);// 写常量名 尽量不写数字 设置窗体的关闭操作;3表示关闭窗体退出程序; 2、1、0
frame.setLocationRelativeTo(null);// 设置窗体相对于另一个组件的居中位置,参数null表示窗体相对于屏幕的中央位置
frame.setResizable(false);// 设置禁止调整窗体大小
//流式布局,布局窗体 从左至右依次摆放 整体默认居中 ,一行充满 摆放到下一行
FlowLayout fl = new FlowLayout(FlowLayout.CENTER, 10, 10);
frame.setLayout(fl); //frame框架调用流式布局方法;
// 图片需要调用ImageIcon类 构造方法(文件路径+文件名.格式)
//图片是内容 不是组件 所以图片对象必须要绑定到组件上才能显示到界面上
ImageIcon icon = new ImageIcon("C:\\Users\\zhuaba\\Desktop\\a.png");
JLabel labIcon = new JLabel(icon); // 用标签来接收图片,实例化JLabel标签对象,该对象显示icon图标
Dimension dim = new Dimension(400,300); //调用Dimension类的构造方法,实例化dim对象 尺寸 dimension
labIcon.setPreferredSize(dim); //优先考虑尺寸
frame.add(labIcon); //将标签对象 labicon加载到窗体frame上
JLabel labName = new JLabel("账号:"); //实例化标签类 labName对象,显示字符串 “账号"
frame.add(labName); //将 labName对象 加载到窗体上
// 文本输入框
JTextField nameInput = new JTextField(); //实例化标签类 nameInput对象
Dimension dim1 = new Dimension(300,30); //实例化 dim1对象
nameInput.setPreferredSize(dim1); //调用 setPreferredSize方法 改变文本输入框尺寸
frame.add(nameInput); //将文本输入框 加载到窗体上
JLabel labpass= new JLabel("密码:"); //实例化标签类 labpass对象
frame.add(labpass); //将标签对象加载到窗体上
//Pwd输入框
JPasswordField pwdInput = new JPasswordField(); //实例化JPasswordField
pwdInput.setPreferredSize(dim1);//设置组件大小
frame.add(pwdInput); //将输入框加载到窗体上
JButton button=new JButton(); //实例化Jbutton
//Dimension dim2 = new Dimension(100,30);
button.setText("登录");
button.setSize(100,30); //设置组件大小
frame.add(button); //将按钮加载到窗体上
//窗体可视化需要将所有组件加载完再执行
frame.setVisible(true);// 设置窗体为可见
//button.setVisible (true);
// 监听器 :将实现了ActionListener的类 创建对象 绑定给按钮对象
LoginListener loginListener = new LoginListener ();
button.addActionListener (loginListener);
/*
在这里直接获取输入框里面的字符串 但是程序执行到这里 ,界面还没有显示到屏幕上面 不存在用户输入账号密码。
获取的账号和密码是空的,所以要将输入框对象传入监听器对象中,在监听器方法(点击按钮会自动调用的方法)中使用输入输入框对象,获取文本。
1.先在监听器中定义两个输入框对象变量名;
2.监听器对象可以调用输入框对象变量名,对其赋值(实际的输入框对象地址);
*/
String username=nameInput.getText();
String pwd=pwdInput.getText();
System.out.println("直接在界面初始化当中获取用户名:" + username+ " 密码: " + pwd);//先赋一个空值,保证输入框显示能够获取,在输入后,调用getText()方法覆盖空的值。
loginListener.textName2=nameInput; //将输入框对象传给监听器
loginListener.textPwd2=pwdInput;
**
效果如下:
监听器
-
点击按钮之后 可以执行自己想要执行的代码
-
如何知道按钮被点击了:
- 监听器: 接口
- 接口: 实现类
- 1: 创建一个类实现 监听器接口 (implements)
- 2: 在类中实现监听器接口的方法
- 3: 将这个写好的类 创建对象 绑定给按钮对象
**
监听器的实现
在本项目中我们使用的是动作监听器来监听按钮是否被点击 。
需要接口 java.awt.event.ActionListener
代码如下(示例):文章来源:https://www.toymoban.com/news/detail-503419.html
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class LoginListener implements ActionListener {
JTextField textName2; // 定义两个输入框变量 类名 对象名
JPasswordField textPwd2;
/**
* 查看 ActionListener 的 源码 重写监听器中的方法
* e
*/
public void actionPerformed(ActionEvent e) {
// 获取按钮上的字符串
String btnstr = e.getActionCommand(); //定义变量 btnstr 通过getActionCommand()方法 ,获取按钮上的字符串;
//验证监听器 监听点击按钮的动作事件
System.out.println(btnstr);
System.out.println("登录按钮被点击了");
//获取输入框的字符
String username = textName2.getText();
String pwd = textPwd2.getText();
System.out.println("点击按钮后获取用户名:" + username + "点击按钮后获取密码" + pwd);//验证是否获取用户数输入的username和pwd
//验证账号登录的半段
if (username.equals("gc") && pwd.equals("123456")) {
//写一个小弹窗
JOptionPane.showMessageDialog(null, "登录成功");
} else {
JOptionPane.showMessageDialog(null,"登陆失败");
}
}
}
需要注意的是 ,监听器的方法需要被重写才能够执行调用。
总结
例如:以上就是今天要讲的内容,本文仅仅简单介绍了登录界面的可视化,下面我们还可以绑定监听器,进行逻辑运算,添加例如登录,注册,验证码验证等相应功能。文章来源地址https://www.toymoban.com/news/detail-503419.html
到了这里,关于JAVA实现简单的登录界面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!