[size=x-small][/size]
从实现QQ登陆浅看swing的应用
我们先来看这个题目,“实现QQ登陆”,下面我们来依次分析:
1. 首先它首先需要一个登陆框,即一个窗体。为此我们的一般思路是需要做的就是先建一个窗体类,然后再创建一个窗体对象,可在这我们不需要这么做,因为JAVA自带了这么一个窗体类,我们可以直接用这个类创建对象,具体操作为:
//创建一个窗体对象
JFrame jf = new JFrame();
2. 创建了窗体以后我们下一步需要做的就是为这个窗体设置一个标题,我们既然是模仿QQ做的就把这个标题名定位QQ2012,然后我们还要控制窗体的大小是他大致和QQ的相同。具体操作如下:
//设置标题
jf.setTitle("QQ2012");
//设置窗体的大小
jf.setSize(200,150);
3. 接下来我们要做的事是:把“注册帐号”“找回密码”“帐号输入框”“密码输入框”“多帐号按钮”“设置按钮”“登录按钮”等等项目有序的放到刚生成的窗体上,而“放上去”这个动作我们需要借助标签来完成,因为我们不能实现在窗体上直接写这些项目,这个过程实际上那个是我们把需要的东西写在标签上,再将标签加在窗体上。具体操作如下:
//创建一个标签类
JLabel label_name = new JLabel("用户名:");
//把标签添加到窗体上去
jf.add(label_name);
//创建一个文本输入框对象
JTextField text_name = new JTextField(10);
//把文本框对象添加到窗体上
jf.add(text_name);
//密码标签
JLabel label_pass = new JLabel("密码:");
//密码输入框
JTextField text_pass = new JTextField(10);
jf.add(label_pass);
jf.add(text_pass);
//创建按钮对象
JButton button_login = new JButton("多帐号");
jf.add(button_login);
JButton button_regist = new JButton("设置");
jf.add(button_regist);
JButton button_login = new JButton(“登录”)
4. 为了实现是所有的项目在窗体上有条不紊的布局,我们需引入流式布局管理器。在这里我们用FlowLayout的第一种构造方法,即默认居中对齐。具体发方法如下:
//创建流式布局管理器
java.awt.FlowLayout fl = new java.awt.FlowLayout();
//给窗体添加布局管理器
jf.setLayout(fl);
5. 我们还缺一幅图画,放在窗体上半区,需要用到Icon他是一个接口不可以直接用它来创建对象,于是我们用他的子类ImageIcond的第八个构造方法:ImageIcon(URL location) 根据指定的 URL 创建一ImageIcon。具体方法是:ImageIcon icon = new ImageIcon("image/1.jpg");
注释:image/1.jpg是一个相对地址我们StudentManageSys文件夹下建立了一个与src文件夹并列的image文件夹用来存放图片。
相应代码为:
// 根据指定的相对地址创建一个 ImageIcon
ImageIcon icon = new ImageIcon("image/1.jpg");
6. 剩下的就是一些小细节,比如设置点关程序程序直接退出,在最后面加上,显示整个窗体的语句。具体语句如下:
//设置窗体关闭时退出程序
jf.setDefaultCloseOperation(3);
//设置窗体可见
jf.setVisible(true);
7. 目前QQ登陆界面除了下拉框,其他都实现,整体代码如下:
/**
* 类似QQ登陆界面的实现
*/
/**
* @author where
*
*/
package lainxi;
import javax.swing.*;
public class QQLogin{
public static void main(String[] args){
//创建一个窗体对象
JFrame jf = new JFrame();
//设置标题
jf.setTitle("QQ2012");
//设置窗体的大小
jf.setSize(400,300);
//设置窗体关闭时退出程序
jf.setDefaultCloseOperation(3);
//设置窗体不能改变大小
// jf.setResizable(false);
//创建流式布局管理器
java.awt.FlowLayout fl = new java.awt.FlowLayout();
//给窗体添加布局管理器
jf.setLayout(fl);
//创建图像对象
ImageIcon icon = new ImageIcon("image/2.jpg");
JLabel l = new javax.swing.JLabel(icon);
java.awt.Dimension men = new java.awt.Dimension(400,150);
l.setPreferredSize(men);
jf.add(l);
//创建一个标签类
JLabel label_name = new JLabel("用户名:");
//把标签添加到窗体上去
jf.add(label_name);
//创建一个文本输入框对象
JTextField text_name = new JTextField(10);
//把文本框对象添加到窗体上
jf.add(text_name);
//密码标签
JLabel label_pass = new JLabel("密码:");
//密码输入框
JTextField text_pass = new JTextField(10);
jf.add(label_pass);
jf.add(text_pass);
//创建复选框
JCheckBox box = new JCheckBox("记住密码 ");
jf.add(box);
JCheckBox box_1 = new JCheckBox("自动登录 ");
jf.add(box_1);
//创建按钮对象
JButton button_login = new JButton("登录");
jf.add(button_login);
JButton button_regist = new JButton("注册");
jf.add(button_regist);
JButton button_dzh=new JButton("多帐号");
jf.add(button_dzh);
//设置窗体可见
jf.setVisible(true);
}
}
分享到:
相关推荐
用Swing 做的仿QQ登陆界面,自己写了组成功能,和登陆验证功能。 很适合初学Swing编程学习使用,希望您感兴趣。也可以继续完善我的功能。不懂的可以联系我!`
刚写的一个QQ登陆界面 希望各位大虾可以完善一下
java Swing实现的仿qq,需要登录客户端(输入服务器端ip),服务器端,可以一对一聊天,
基本实现了所有QQ的功能,包括聊天,离线功能,聊天窗口可发表情,截图,抖动,以及同步画板,另有添加删除好友,群及群组管理, 同时做了一些美化,比目前其他的java实现的聊天室绝对要好看很多, 数据库用的是...
用JDK6.0版本的swing实现的QQ界面
swing写的QQ2009登陆界面!!!!!!!!!!!!!!
仿QQ聊天系统,运用技术java swing,其中用到了大量的线程,socket,特别适合j2se的初学者!内含数据库
基本实现了所有QQ的功能,包括聊天,图片传输,添加删除好友,群 同时做了一些美化,比目前其他的java实现的聊天室绝对要好看很多, 数据库用的是Mysql,在压缩包内
QQ登录界面,界面和QQ的登录界面一样,是模拟QQ界面来写的,只是没有事件监听,分享下,希望对大家有帮助
从javaeye上面下载下来的QQ登陆,是用Swing做的,主要是供自己学习
用swing做的qq界面
swing+socket的QQ简单通信,实现了简单的socket通信,添加查找好友,QQ对聊等功能.
该程序是用java语言实现的qq聊天程序,图形界面用Swing实现,以及多线程
java swing 仿QQ 聊天器 源代码
QQ聊天窗口泡泡模式的Swing实现,非常的美观。
javaswing编写的仿QQ界面以及聊天功能 ,还有添加了智能对话,对接入API提供了一个完美的实例!
简单,粗暴,我自己看了都怕
用java实现的简单的qq,有图形化界面,swing开发,可以实现聊天,更换皮肤等简单功能
用 Java swing做的QQ聊天程序,可以在局域网内聊天, 客户端和服务器简单易懂,功能齐全,可以注册,可以登陆,希望支持
swing 模仿QQ登录界面 自定义窗体结构