用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

QQ

2014-03-08 作者: 云代码会员举报

[java]代码库

package client.control;
 
 
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
 
import javax.swing.JOptionPane;
import com.MyTools;
import com.MyTools.Flag;
 
import client.common.MyLabel;
import client.frame.LoginFrame;
import client.frame.RegisterFrame;
import client.socket.CS_TCP;
//import com.sun.awt.AWTUtilities;//这个导入很重要,不导入报错,导入但又警告,所以不要理警告
/**
 * @author LXA
 * 登录窗体,继承自LoginFrame
 */
public class Login extends LoginFrame
{
    int width=350;
    int height=266;
    private Point lastPoint = null;//存放按下鼠标时的坐标点
    public CS_TCP cs_TCP=null;//声明一个客户端TCP
    public Main main; //声明一个主窗体
    public RegisterFrame registerFrame=null;
    /**
     * 程序的主入口
     * @param args
     */
    public static void main(String[] args)
    {
        MyTools.changeSkin();//更换皮肤
        new Login();
    }
     
     
    /**
     * 登录窗体的构造方法
     */
    public Login()
    {
        init();
    }
 
    /**
     * 初始化
     */
    public void init()
    {
        MyTools.setWindowsMiddleShow(this,width,height);//设置窗体居中显示
        new MyLabel(lbl登录, "../img/button/button_login", "png").addEvent();
        new MyLabel(lbl最小化, "../img/button/login_minsize", "png").addEvent();
        new MyLabel(lbl退出, "../img/button/login_exit", "png").addEvent();
        new MyLabel(lbl多账号, "../img/button/login_duozhanghao", "png").addEvent();
        new MyLabel(lbl设置, "../img/button/login_setting", "png").addEvent();
        new MyLabel(lbl注册账号).addEvent();
        initUserStatus();
        //AWTUtilities.setWindowOpaque(this, false);//设置窗体完全透明
        addEvent();
        this.setVisible(true);
        main=new Main();
    }
    /**
     * 初始化用户是否在线等状态
     */
    public void initUserStatus()
    {
        comboBox状态.removeAllItems();
        comboBox状态.addItem(MyTools.getIcon("../img/status/status_online_12.png"));
        comboBox状态.addItem(MyTools.getIcon("../img/status/status_qme_12.png"));
        comboBox状态.addItem(MyTools.getIcon("../img/status/status_leave_12.png"));
        comboBox状态.addItem(MyTools.getIcon("../img/status/status_busy_12.png"));
        comboBox状态.addItem(MyTools.getIcon("../img/status/status_invisible_12.png"));
    }
     
 
    /**
     * 登录到服务器
     */
    public void login()
    {
        String name=textField用户名.getText();
        String password=new String(pwd密码.getPassword());
        if(name.equals("")||password.equals(""))
            JOptionPane.showMessageDialog(this, "用户名和密码不能为空!","错误",JOptionPane.ERROR_MESSAGE);
        else
        {
            try
            {
                if(cs_TCP==null)
                    cs_TCP=new CS_TCP(MyTools.QQServerIP, MyTools.QQServerPort,this,main);
                System.out.println("开始检测用户名和密码……");
                 
                cs_TCP.sendMessage(Flag.LOGIN+MyTools.FLAGEND+name+MyTools.SPLIT1+password+MyTools.SPLIT1+main.getServerPort()+MyTools.SPLIT1+comboBox状态.getSelectedIndex());
            }
            catch (Exception e)
            {
                JOptionPane.showMessageDialog(null, "连接服务器失败!请检查网络连接或确保QQ服务器已启动!");
            }
        }
    }
     
    /**
     * 处理窗体的鼠标按下事件
     * @param e
     */
    public void mousePress(MouseEvent e)
    {
        lastPoint = e.getLocationOnScreen();
    }
    /**
     * 处理窗体的拖拽事件
     * @param e
     */
    public void mouseDrag(MouseEvent e)
    {
        Point point = e.getLocationOnScreen();
        int offsetX = point.x - lastPoint.x;
        int offsetY = point.y - lastPoint.y;
        Rectangle bounds = this.getBounds();
        bounds.x += offsetX;
        bounds.y += offsetY;
        this.setBounds(bounds);
        lastPoint = point;
    }
     
    /**
     * 给窗体添加事件
     */
    public void addEvent()
    {
        lbl登录.addMouseListener(new MouseAdapter()
        {
            //登录按钮的单击事件
            @Override
            public void mouseClicked(MouseEvent e)
            {
                login();
            }
        });
        this.addMouseListener(new MouseAdapter()
        {
            //窗体的鼠标按下事件
            @Override
            public void mousePressed(MouseEvent e)
            {
                mousePress(e);
            }
        });
        this.addMouseMotionListener(new MouseAdapter()
        {
            @Override
            public void mouseDragged(MouseEvent e)
            {
                mouseDrag(e);
            };
        });
        lbl退出.addMouseListener(new MouseAdapter()
        {
            @Override
            public void mouseClicked(MouseEvent e)
            {
                System.exit(0);
            }
        });
        lbl最小化.addMouseListener(new MouseAdapter()
        {
            @Override
            public void mouseClicked(MouseEvent e)
            {
                JOptionPane.showMessageDialog(null, "功能暂未实现!敬请期待!", "温馨提示", JOptionPane.INFORMATION_MESSAGE);
            }
        });
        lbl多账号.addMouseListener(new MouseAdapter()
        {
            @Override
            public void mouseClicked(MouseEvent e)
            {
                JOptionPane.showMessageDialog(null, "功能暂未实现!敬请期待!", "温馨提示", JOptionPane.INFORMATION_MESSAGE);
            }
        });
        lbl设置.addMouseListener(new MouseAdapter()
        {
            @Override
            public void mouseClicked(MouseEvent e)
            {
                JOptionPane.showMessageDialog(null, "功能暂未实现!敬请期待!", "温馨提示", JOptionPane.INFORMATION_MESSAGE);
            }
        });
        lbl注册账号.addMouseListener(new MouseAdapter()
        {
            @Override
            public void mouseClicked(MouseEvent e)
            {
                new Register();
            }
        });
    }
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...