用java怎么实现QQ登录界面?

用java怎么实现QQ登录界面?,第1张

用java做QQ登录界面的写法如下:

package ch10

import java.awt.*

import java.awt.event.*

import javax.swing.*

1、//定义该类继承自JFrame,实现ActionListener接口

public class LoginTest extends JFrame implements ActionListener

{

2、//创建JPanel对象

private JPanel jp=new JPanel()

3、//创建3个标并加入数组

JLabel name = new JLabel("请输入用户名")

JLabel password = new JLabel("请输入密码")

JLabel show = new JLabel("")

private JLabel[] jl={name,password,show}

4、//创建登陆和重置按扭并加入数组

JButton login = new JButton("登陆")

JButton reset = new JButton("重置")

private JButton[] jb={login,reset}

5、//创建文本框以及密码框

private JTextField jName=new JTextField()

private JPasswordField jPassword =new JPasswordField()

public LoginTest()

{

6、//设置布局管理器为空布局,这里自己摆放按钮、标签和文本框

jp.setLayout(null)

for(int i=0i<2i++)

{

7、//设置标签和按扭的位置与大小

jl[i].setBounds(30,20+40*i,180,20)

jb[i].setBounds(30+110*i,100,80,20)

8、//添加标签和按扭到JPanel容器中

jp.add(jl[i])

jp.add(jb[i])

//为2个按钮注册动作事件监听器

jb[i].addActionListener(this)

}

9、//设置文本框的位置和大小,注意满足美观并足够用户名的长度

jName.setBounds(130,15,100,20)

10、//添加文本框到JPanel容器中

jp.add(jName)

11、//为文本框注册动作事件监听器

jName.addActionListener(this)

12、//设置密码框的位置和大小,注意满足美观和足够密码的长度

jPassword.setBounds(130,60,100,20)

13、//添加密码框到JPanel容器中

jp.add(jPassword)

14、//设置密码框中的回显字符,这里设置美元符号

jPassword.setEchoChar('$')

15、//为密码框注册动作事件监听器

jPassword.addActionListener(this)

16、//设置用于显示登陆状态的标签大小位置,并将其添加进JPanel容器

jl[2].setBounds(10,180,270,20)

jp.add(jl[2])

17、//添加JPanel容器到窗体中

this.add(jp)

18、//设置窗体的标题、位置、大小、可见性及关闭动作

this.setTitle("登陆窗口")

this.setBounds(200,200,270,250)

this.setVisible(true)

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

}

19、//实现动作监听器接口中的方法actionPerformed

public void actionPerformed(ActionEvent e)

{

20、//如果事件源为文本框

if(e.getSource()==jName)

{

21、//切换输入焦点到密码框

jPassword.requestFocus()

}

22、//如果事件源为重置按扭

else if(e.getSource()==jb[1])

{

23、//清空姓名文本框、密码框和show标签中的所有信息

jl[2].setText("")

jName.setText("")

jPassword.setText("")

24、//让输入焦点回到文本框

jName.requestFocus()

}

25、//如果事件源为登陆按钮,则判断登录名和密码是否正确

else

{

26、//判断用户名和密码是否匹配

if(jName.getText().equals("lixiangguo")&&

String.valueOf(jPassword.getPassword()).equals("19801001"))

{

27、jl[2].setText("登陆成功,欢迎您的到来!")

}

else

{

28、jl[2].setText("对不起,您的用户名或密码错误!")

}

}

}

public static void main(String[] args)

{

29、//创建LoginTest窗体对象

new LoginTest()

}

}

什么都不说了 直接给你代码吧\x0d\x0apackage com.moliying.ui\x0d\x0aimport java.awt.BorderLayout\x0d\x0aimport java.awt.Container\x0d\x0aimport java.awt.FlowLayout\x0d\x0aimport java.awt.List\x0d\x0aimport java.awt.event.ActionEvent\x0d\x0aimport java.awt.event.ActionListener\x0d\x0aimport java.io.BufferedWriter\x0d\x0aimport java.io.FileOutputStream\x0d\x0aimport java.io.OutputStreamWriter\x0d\x0aimport java.util.ArrayList\x0d\x0aimport java.util.Arrays\x0d\x0aimport javax.swing.JButton\x0d\x0aimport javax.swing.JFrame\x0d\x0aimport javax.swing.JLabel\x0d\x0aimport javax.swing.JPanel\x0d\x0aimport javax.swing.JPasswordField\x0d\x0aimport javax.swing.JTextField\x0d\x0apublic class Login {\x0d\x0aprivate JFrame frame = new JFrame("登录")\x0d\x0aprivate Container c = frame.getContentPane()\x0d\x0aprivate JTextField username = new JTextField()\x0d\x0aprivate JPasswordField password = new JPasswordField()\x0d\x0aprivate JButton ok = new JButton("确定")\x0d\x0aprivate JButton cancel = new JButton("取消")\x0d\x0apublic Login() {\x0d\x0aframe.setSize(300, 200)\x0d\x0aframe.setBounds(450, 300, 300, 200)\x0d\x0ac.setLayout(new BorderLayout())\x0d\x0ainitFrame()\x0d\x0aframe.setVisible(true)\x0d\x0a}\x0d\x0aprivate void initFrame() {\x0d\x0a// 顶部\x0d\x0aJPanel titlePanel = new JPanel()\x0d\x0atitlePanel.setLayout(new FlowLayout())\x0d\x0atitlePanel.add(new JLabel("系统管理员登录"))\x0d\x0ac.add(titlePanel, "North")\x0d\x0a// 中部表单\x0d\x0aJPanel fieldPanel = new JPanel()\x0d\x0afieldPanel.setLayout(null)\x0d\x0aJLabel a1 = new JLabel("用户名:")\x0d\x0aa1.setBounds(50, 20, 50, 20)\x0d\x0aJLabel a2 = new JLabel("密 码:")\x0d\x0aa2.setBounds(50, 60, 50, 20)\x0d\x0afieldPanel.add(a1)\x0d\x0afieldPanel.add(a2)\x0d\x0ausername.setBounds(110, 20, 120, 20)\x0d\x0apassword.setBounds(110, 60, 120, 20)\x0d\x0afieldPanel.add(username)\x0d\x0afieldPanel.add(password)\x0d\x0ac.add(fieldPanel, "Center")\x0d\x0a// 底部按钮\x0d\x0aJPanel buttonPanel = new JPanel()\x0d\x0abuttonPanel.setLayout(new FlowLayout())\x0d\x0abuttonPanel.add(ok)\x0d\x0abuttonPanel.add(cancel)\x0d\x0ac.add(buttonPanel, "South")\x0d\x0a\x0d\x0aok.addActionListener(new ActionListener() {\x0d\x0a\x0d\x0a@Override\x0d\x0apublic void actionPerformed(ActionEvent e) {\x0d\x0aSystem.out.println(username.getText().toString())\x0d\x0a}\x0d\x0a})\x0d\x0a\x0d\x0acancel.addActionListener(new ActionListener() {\x0d\x0a\x0d\x0a@Override\x0d\x0apublic void actionPerformed(ActionEvent e) {\x0d\x0aframe.setVisible(false)\x0d\x0a}\x0d\x0a})\x0d\x0a}\x0d\x0apublic static void main(String[] args) {\x0d\x0a//new Login()\x0d\x0a\x0d\x0aString ss = "abbabbbaabbbccba"\x0d\x0a\x0d\x0aSystem.out.println(ss.split("b").length)\x0d\x0a\x0d\x0a}\x0d\x0a}

概述

具体框架使用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)//第三块面板添加确认和取消

//        jp3.setLayout(new FlowLayout()) //因为JPanel默认布局方式为FlowLayout,所以可以注销这段代码.

this.add(jp1)

this.add(jp2)

this.add(jp3) //将三块面板添加到登陆框上面

//设置显示

this.setSize(300, 200)

//this.pack()

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"。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11742255.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存