欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用java swing实现qq登录界面示例分享

程序员文章站 2024-02-25 09:33:01
用java swing做的一个qq登录界面 复制代码 代码如下:import java.awt.container;import java.awt.image;impor...

用java swing做的一个qq登录界面

复制代码 代码如下:

import java.awt.container;
import java.awt.image;
import java.awt.event.actionevent;
import java.awt.event.actionlistener;

import javax.swing.imageicon;
import javax.swing.jbutton;
import javax.swing.jcheckbox;
import javax.swing.jcombobox;
import javax.swing.jframe;
import javax.swing.jlabel;
import javax.swing.joptionpane;
import javax.swing.jpasswordfield;
import javax.swing.jtextfield;

/**
 * 仿qq登录界面
 *
 * @author jiang
 */
public class guiqq extends jframe {
    // 用户名
    private jtextfield username;
    // 密码
    private jpasswordfield password;
    // 小容器
    private jlabel jl1;
    private jlabel jl2;
    private jlabel jl3;
    private jlabel jl4;

    // 小按钮
    private jbutton bu1;
    private jbutton bu2;
    private jbutton bu3;

    // 复选框
    private jcheckbox jc1;
    private jcheckbox jc2;

    // 列表框
    private jcombobox jcb;

    /*
     * 构造方法
     */
    public guiqq() {
        // 设置窗口标题
        this.settitle("qq2012正式版");
        // 窗体组件初始化
        init();
        this.setdefaultcloseoperation(jframe.exit_on_close);
        // 设置布局方式为绝对定位
        this.setlayout(null);

        this.setbounds(0, 0, 355, 265);
        // 设置窗体的标题图标
        image image = new imageicon("e:/a.gif").getimage();
        this.seticonimage(image);

        // 窗体大小不能改变
        this.setresizable(false);

        // 居中显示
        this.setlocationrelativeto(null);

        // 窗体可见
        this.setvisible(true);
    }

    /*
     * 初始化方法
     */
    public void init() {
        // 创建一个容器
        container con = this.getcontentpane();
        jl1 = new jlabel();
        // 设置背景图片
        image image1 = new imageicon("e:/background.jpg").getimage();
        jl1.seticon(new imageicon(image1));
        jl1.setbounds(0, 0, 355, 265);

        // qq登录头像设定
        jl2 = new jlabel();
        image image2 = new imageicon("e:/a.gif").getimage();
        jl2.seticon(new imageicon(image2));
        jl2.setbounds(40, 95, 50, 60);

        // 用户号码登录输入框
        username = new jtextfield();
        username.setbounds(100, 100, 150, 20);
        // 用户号码登录输入框旁边的文字
        jl3 = new jlabel("注册账号");
        jl3.setbounds(260, 100, 70, 20);

        // 密码输入框
        password = new jpasswordfield();
        password.setbounds(100, 130, 150, 20);
        // 密码输入框旁边的文字
        jl4 = new jlabel("找回密码");
        jl4.setbounds(260, 130, 70, 20);

        // 输入框下方文字
        jc1 = new jcheckbox("记住密码");
        jc1.setbounds(105, 155, 80, 15);
        jc2 = new jcheckbox("自动登录");
        jc2.setbounds(185, 155, 80, 15);
        // 用户登录状态选择
        jcb = new jcombobox();
        jcb.additem("在线");
        jcb.additem("隐身");
        jcb.additem("离开");
        jcb.setbounds(40, 150, 55, 20);

        // 按钮设定
        bu1 = new jbutton("登录");
        bu1.setbounds(280, 200, 65, 20);
        // 给按钮添加1个事件
        bu1.addactionlistener(new actionlistener() {

            @override
            public void actionperformed(actionevent e) {
                string str=e.getactioncommand();
                if("登录".equals(str)){
                    string getname =username.gettext();
//                  string getpwd =password.gettext();
                     joptionpane.showconfirmdialog(null, "您输入的用户名是"+getname);
                }

            }
        });
        bu2 = new jbutton("多账号");
        bu2.setbounds(5, 200, 75, 20);
        bu3 = new jbutton("设置");
        bu3.setbounds(100, 200, 65, 20);

        // 所有组件用容器装载
        jl1.add(jl2);
        jl1.add(jl3);
        jl1.add(jl4);
        jl1.add(jc1);
        jl1.add(jc2);
        jl1.add(jcb);
        jl1.add(bu1);
        jl1.add(bu2);
        jl1.add(bu3);
        con.add(jl1);
        con.add(username);
        con.add(password);
    }
    public static void main(string[] args) {
        // 实例化对象
        guiqq qq = new guiqq();
    }

}