swing(二)可视化方式拖拽组件快速生成登陆界面
时间:2021-08-20
本文章向大家介绍swing(二)可视化方式拖拽组件快速生成登陆界面,主要包括swing(二)可视化方式拖拽组件快速生成登陆界面使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
使用eclipse的WindowBuilder插件的可视化方式拖拉组件快速生成登陆界面
安装好WindowBuilder插件之后,在eclipse里面使用快捷键ctrl+N ==> new JFrame:
给面板设置需要的布局,然后通过拖拉组件画出登陆界面:
然后再修改一下代码,编写登陆按钮和重置按钮的方法:
public class LoginFrame extends JFrame {
private JPanel contentPane;
private JTextField userNameTf;
private JPasswordField passwordField;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
LoginFrame frame = new LoginFrame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public LoginFrame() {
setResizable(false);
setTitle("登陆界面");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(600,400);
this.setLocationRelativeTo(null);
// setBounds(100, 100, 600, 400);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel userNameLbl = new JLabel("用户名:");
userNameLbl.setFont(new Font("微软雅黑", Font.PLAIN, 20));
userNameLbl.setBounds(100, 70, 93, 40);
contentPane.add(userNameLbl);
userNameTf = new JTextField();
userNameTf.setBounds(239, 75, 239, 30);
contentPane.add(userNameTf);
userNameTf.setColumns(10);
JLabel passwordLbl = new JLabel("密码:");
passwordLbl.setFont(new Font("微软雅黑", Font.PLAIN, 20));
passwordLbl.setBounds(100, 137, 93, 40);
contentPane.add(passwordLbl);
passwordField = new JPasswordField();
passwordField.setBounds(239, 142, 239, 30);
contentPane.add(passwordField);
JButton loginBtn = new JButton("登陆");
loginBtn.setFont(new Font("微软雅黑", Font.PLAIN, 20));
loginBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
login();
}
});
loginBtn.setBounds(132, 238, 113, 40);
contentPane.add(loginBtn);
JButton resetBtn = new JButton("重置");
resetBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
reset();
}
});
resetBtn.setFont(new Font("微软雅黑", Font.PLAIN, 20));
resetBtn.setBounds(331, 238, 113, 40);
contentPane.add(resetBtn);
}
//登陆
public void login() {
if(userNameTf.getText().equals("admin")&&String.valueOf(passwordField.getPassword()).equals("123456")) {
JOptionPane.showMessageDialog(null, "登陆成功");
}else {
JOptionPane.showMessageDialog(null, "登陆失败");
}
}
//重置
public void reset() {
userNameTf.setText("");
passwordField.setText("");
}
}
即可快速生成简单的登陆界面。
原文地址:https://www.cnblogs.com/harglo/p/15166283.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Python 技术篇-pyperclip库实现读取写入剪切板,超简单
- 基于consul的Docker-overlay跨多宿主机容器网络
- Python 微信机器人-向指定名称的好友发送微信消息
- JavaScript技术篇-js提升网页视频播放速率,提高慕课网视频播放速度
- 使用docker五步搭建ELK日志收集分析系统
- HDFS之SequenceFile和MapFile
- 配置ELK技术栈来分析apache tomcat日志
- LVS DR模式搭建,keepalived + lvs
- Ubuntu安装docker
- DockerFile简介与实例
- Elasticsearch2.3官方Dockerfile解析
- openstack架构解析
- Linux服务器基础网络配置
- 负载均衡集群介绍,LVS介绍,LVS的调度算法,LVS的NAT模式搭建
- 03 实战 Ansible-Playbook之初始化服务器