用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"。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)