本文目录一览:
登陆界面的java代码怎么写?
概述
具体框架使用 JFrame
,文本框组件:JTextField
;密码框组件:JPasswordField
;标签组件:JLabel
;复选框组件:JCheckBox
;单选框组件:JRadioButton
;按钮组件 JButton
。
登录界面:
代码实例
import javax.swing.*;
import java.awt.*; // 导入必要的包
public class denglu extends JFrame {
JTextField jTextField; // 定义文本框组件
JPasswordField jPasswordField; // 定义密码框组件
JLabel jLabel1, jLabel2;
JPanel jp1, jp2, jp3;
JButton jb1, jb2; // 创建按钮
public denglu() {
jTextField = new JTextField(12);
jPasswordField = new JPasswordField(13);
jLabel1 = new JLabel("用户名");
jLabel2 = new JLabel("密码");
jb1 = new JButton("确认");
jb2 = new JButton("取消");
jp1 = new JPanel();
jp2 = new JPanel();
jp3 = new JPanel();
// 设置布局
this.setLayout(new GridLayout(3, 1));
jp1.add(jLabel1);
jp1.add(jTextField); // 第一块面板添加用户名和文本框
jp2.add(jLabel2);
jp2.add(jPasswordField); // 第二块面板添加密码和密码输入框
jp3.add(jb1);
jp3.add(jb2); // 第三块面板添加确认和取消
this.add(jp1);
this.add(jp2);
this.add(jp3); // 将三块面板添加到登陆框上面
// 设置显示
this.setSize(300, 200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
this.setTitle("登陆");
}
public static void main(String[] args) {
new denglu();
}
}
拓展内容
Java Swing包
Swing 是一个为 Java 设计的 GUI 工具包。Swing 是 Java 基础类的一部分。Swing 包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。Swing 提供许多比 AWT 更好的屏幕显示元素。它们用纯 Java 写成,所以同 Java 本身一样可以跨平台运行,这一点不像 AWT。它们是 JFC 的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用 Java 支持的任意面板。轻量级组件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。
概念解析:
- JFrame – Java 的 GUI 程序的基本思路是以 JFrame 为基础,它是屏幕上 window 的对象,能够最大化、最小化、关闭。
- JPanel – Java 图形用户界面 (GUI) 工具包 Swing 中的面板容器类,包含在
javax.swing
包中,可以进行嵌套,功能是对窗体中具有相同逻辑功能的组件进行组合,是一种轻量级容器,可以加入到JFrame
窗体中。 - JLabel – JLabel 对象可以显示文本、图像或同时显示二者。可以通过设置垂直和水平对齐方式,指定标签显示区中标签内容在何处对齐。默认情况下,标签在其显示区内垂直居中对齐。默认情况下,只显示文本的标签是开始边对齐;而只显示图像的标签则水平居中对齐。
- JTextField – 一个轻量级组件,它允许编辑单行文本。
- JPasswordField – 允许我们输入了一行字像输入框,但隐藏星号 (*) 或点创建密码 (密码)
- JButton – JButton 类的实例。用于创建按钮类似实例中的 "Login"。
如何用JAVA编写一个简单用户登陆界面?
什么都不说了,直接给你代码吧:
package com.moliying.ui;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class Login {
private JFrame frame = new JFrame("登录");
private Container c = frame.getContentPane();
private JTextField username = new JTextField();
private JPasswordField password = new JPasswordField();
private JButton ok = new JButton("确定");
private JButton cancel = new JButton("取消");
public Login() {
frame.setSize(300, 200);
frame.setBounds(450, 300, 300, 200);
c.setLayout(new BorderLayout());
initFrame();
frame.setVisible(true);
}
private void initFrame() {
// 顶部
JPanel titlePanel = new JPanel();
titlePanel.setLayout(new FlowLayout());
titlePanel.add(new JLabel("系统管理员登录"));
c.add(titlePanel, "North");
// 中部表单
JPanel fieldPanel = new JPanel();
fieldPanel.setLayout(null);
JLabel a1 = new JLabel("用户名:");
a1.setBounds(50, 20, 50, 20);
JLabel a2 = new JLabel("密 码:");
a2.setBounds(50, 60, 50, 20);
fieldPanel.add(a1);
fieldPanel.add(a2);
username.setBounds(110, 20, 120, 20);
password.setBounds(110, 60, 120, 20);
fieldPanel.add(username);
fieldPanel.add(password);
c.add(fieldPanel, "Center");
// 底部按钮
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new FlowLayout());
buttonPanel.add(ok);
buttonPanel.add(cancel);
c.add(buttonPanel, "South");
ok.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println(username.getText().toString());
}
});
cancel.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
frame.setVisible(false);
}
});
}
public static void main(String[] args) {
// new Login();
String ss = "abbabbbaabbbccba";
System.out.println(ss.split("b").length);
}
}
用java实现QQ登录界面怎么写
package ch10;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
// 定义该类继承自JFrame,实现ActionListener接口
public class LoginTest extends JFrame implements ActionListener {
// 创建JPanel对象
private JPanel jp = new JPanel();
// 创建3个标签并加入数组
JLabel name = new JLabel("请输入用户名");
JLabel password = new JLabel("请输入密码");
JLabel show = new JLabel("");
private JLabel[] jl = { name, password, show };
// 创建登陆和重置按钮并加入数组
JButton login = new JButton("登陆");
JButton reset = new JButton("重置");
private JButton[] jb = { login, reset };
// 创建文本框以及密码框
private JTextField jName = new JTextField();
private JPasswordField jPassword = new JPasswordField();
public LoginTest() {
// 设置布局管理器为空布局,这里自己摆放按钮、标签和文本框
jp.setLayout(null);
for (int i = 0; i < 2; i++) {
// 设置标签和按钮的位置与大小
jl[i].setBounds(30, 20 + 40 * i, 180, 20);
jb[i].setBounds(30 + 110 * i, 100, 80, 20);
// 添加标签和按钮到JPanel容器中
jp.add(jl[i]);
jp.add(jb[i]);
// 为2个按钮注册动作事件监听器
jb[i].addActionListener(this);
}
// 设置文本框的位置和大小,注意满足美观并足够用户名的长度
jName.setBounds(130, 15, 100, 20);
// 添加文本框到JPanel容器中
jp.add(jName);
// 为文本框注册动作事件监听器
jName.addActionListener(this);
// 设置密码框的位置和大小,注意满足美观和足够密码的长度
jPassword.setBounds(130, 60, 100, 20);
// 添加密码框到JPanel容器中
jp.add(jPassword);
// 设置密码框中的回显字符,这里设置美元符号
jPassword.setEchoChar('$');
// 为密码框注册动作事件监听器
jPassword.addActionListener(this);
// 设置用于显示登陆状态的标签大小位置,并将其添加进JPanel容器
jl[2].setBounds(10, 180, 270, 20);
jp.add(jl[2]);
// 添加JPanel容器到窗体中
this.add(jp);
// 设置窗体的标题、位置、大小、可见性及关闭动作
this.setTitle("登陆窗口");
this.setBounds(200, 200, 270, 250);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
// 实现动作监听器接口中的方法actionPerformed
public void actionPerformed(ActionEvent e) {
// 如果事件源为文本框
if (e.getSource() == jName) {
// 切换输入焦点到密码框
jPassword.requestFocus();
}
// 如果事件源为重置按钮
else if (e.getSource() == jb[1]) {
// 清空姓名文本框、密码框和show标签中的所有信息
jl[2].setText("");
jName.setText("");
jPassword.setText("");
// 让输入焦点回到文本框
jName.requestFocus();
}
// 如果事件源为登陆按钮,则判断登录名和密码是否正确
else {
// 判断用户名和密码是否匹配
if (jName.getText().equals("lixiangguo") && String.valueOf(jPassword.getPassword()).equals("19801001")) {
jl[2].setText("登陆成功,欢迎您的到来!");
} else {
jl[2].setText("对不起,您的用户名或密码错误!");
}
}
}
public static void main(String[] args) {
// 创建LoginTest窗体对象
new LoginTest();
}
}
这个简单点的。
用java程序编写一个简单的登录界面怎么写?
程序如下:
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
@SuppressWarnings("serial")
public class MainFrame extends JFrame {
JLabel lbl1 = new JLabel("用户名:");
JLabel lbl2 = new JLabel("密 码:");
JTextField txt = new JTextField("admin", 20);
JPasswordField pwd = new JPasswordField(20);
JButton btn = new JButton("登录");
JPanel pnl = new JPanel();
private int error = 0;
public MainFrame(String title) throws HeadlessException {
super(title);
init();
}
private void init() {
this.setResizable(false);
pwd.setEchoChar('*');
pnl.add(lbl1);
pnl.add(txt);
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if ("admin".equals(new String(pwd.getPassword()))) {
pnl.removeAll();
JLabel lbl3 = new JLabel();
ImageIcon icon = new ImageIcon(this.getClass().getResource("pic.jpg"));
lbl3.setIcon(icon);
pnl.add(lbl3);
} else {
if (error < 3) {
JOptionPane.showMessageDialog(null, "密码输入错误,请再试一次");
error++;
} else {
JOptionPane.showMessageDialog(null, "对不起,您不是合法用户");
txt.setEnabled(false);
pwd.setEnabled(false);
btn.setEnabled(false);
}
}
}
});
}
public static void main(String[] args) {
MainFrame frm = new MainFrame("测试");
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.setBounds(100, 100, 300, 120);
frm.setVisible(true);
}
}
编程的注意事项:
- Java 是一门面向对象编程语言,不仅吸收了 C++ 语言的各种优点,还摒弃了 C++ 里难以理解的多继承、指针等概念,因此 Java 语言具有功能强大和简单易用两个特征。Java 语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
- Java 具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java 可以编写桌面应用程序、Web 应用程序、分布式系统和嵌入式系统应用程序等。
- 2006 年 11 月 13 日,Java 技术的发明者 Sun 公司宣布,将 Java 技术作为免费软件对外发布。Sun 公司正式发布的有关 Java 平台标准版的第一批源代码,以及 Java 迷你版的可执行源代码。从 2007 年 3 月起,全世界所有的开发人员均可对 Java 源代码进行修改。