介绍
这篇文章主要讲解了java模仿实现QQ登录界面的方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
这是我模仿QQ2015版界面,实现的基本功能有登陆验证,重置等,当然直接复制代码运行是不一样的,还要注意自己插入自己的图片。
结果截图如下所示:
代码:
进口java.awt.BorderLayout; 进口java.awt.Color; 进口java.awt.FlowLayout; 进口java.awt.GridLayout; 进口java.awt.Image; 进口java.awt.event.ActionEvent; 进口java.awt.event.ActionListener; 进口java.util.Arrays; 进口java.util.HashMap; 进口java.util.Iterator; 进口java.util.Map; 进口java.util.Set; 进口javax.swing.ImageIcon; 进口javax.swing.JButton; 进口javax.swing.JCheckBox; 进口javax.swing.JFrame; 进口javax.swing.JLabel; 进口javax.swing.JOptionPane; 进口javax.swing.JPanel; 进口javax.swing.JPasswordField; 进口javax.swing.JTextField; 公共类QQ2015 JFrame延伸实现ActionListener { JFrame loginFrame;//复选框 私人JCheckBox窗口jc1; 私人JCheckBox窗口jc2;//用户名 私人JTextField用户名;//密码 私人JPasswordField密码;//错误消息提示 JLabel mes;//创建一个HashMap,用以保存帐号和密码 String> HashMap<字符串;用户=new HashMap<字符串,String> ();//主函数入口 公共静态void main (String [] args) { QQ2015 QQ2015=new QQ2015 (); qq2015.showLoginFrame (); }//构造方法 公共QQ2015 () { users.put (“123456”,“123456”); users.put (“302795036”,“123456”); users.put (“123”,“123456“); }//创建登陆界面方法 公共空间showLoginFrame () { loginFrame=new JFrame ();//设置大小,位置,标题 loginFrame。setSize (410、380); loginFrame.setTitle(“修衡-QQ2015"); loginFrame.setLocationRelativeTo(空);//创建边界布局对象 loginFrame。setLayout(新BorderLayout ()); JPanel panelTop=new JPanel(新FlowLayout ()); JPanel panelCenter=new JPanel(新GridLayout (3,1)); JPanel panelFooter=new JPanel(新GridLayout (2, 1)); JPanel panelFooter1=new JPanel(新FlowLayout ()); JPanel panelFooter2=new JPanel(新FlowLayout ()); panelFooter.add (panelFooter1); panelFooter.add (panelFooter2); JPanel panelLeft=new JPanel(新GridLayout (1,1)); JPanel panelRight=new JPanel(新GridLayout (3,1)); loginFrame.add (“North" panelTop); loginFrame.add (“Center" panelCenter); loginFrame.add (“South" panelFooter); loginFrame.add (“West" panelLeft); loginFrame.add (“East" panelRight); (新BorderLayout ()) .setHgap (50);//插入图片 图片我=new ImageIcon(“一个/qq.png") .getImage (); 我=我。DO_NOTHING_ON_CLOSE getScaledInstance (90); loginFrame.setIconImage (im); JLabel tl=new JLabel(新ImageIcon(“一个/top.png")); panelTop.add (tl);//可以设置panelTop背景颜色//panelTop.setBackground (Color.YELLOW); JLabel噢=new JLabel(新ImageIcon(“一个/left.png")); panelLeft.add (ll);//创建注册账号和找回密码标签 JLabel reg_name=new JLabel (“;注册账号“); JLabel find_password=new JLabel (“;找回密码“); reg_name.setForeground (Color.BLUE); find_password.setForeground (Color.BLUE);//创建帐号和密码输入框 用户名=new JTextField (18); 密码=new JPasswordField (18);//复选框 jc1=new JCheckBox窗口(“记住密码“); jc2=new JCheckBox窗口(“自动登录“); JLabel nul1=new JLabel (“;“); JLabel nul2=new JLabel (“;“);//错误消息提示标签 mes=new JLabel (); mes.setForeground (Color.RED);//部分布的局 JPanel pancener=new JPanel(新FlowLayout ()); pancener.add (jc1); pancener.add (nul1); pancener.add (jc2);//创建登陆,重置按钮 JButton button_reset=new JButton (“;重置“); JButton button_login=new JButton (“;登陆“); button_login.setBackground (Color.pink);//窗体大小不能改变 loginFrame.setResizable(假);//设置窗体可见 loginFrame.setVisible(真正的);//将文本输入框,按钮,事件监听对象等添加 panelCenter.add(用户名); panelCenter.add(密码); panelCenter.add (pancener); panelRight.add (reg_name); panelRight.add (find_password); panelFooter1.add (button_reset); panelFooter1.add (nul2); panelFooter1.add (button_login); panelFooter2.add (mes); button_reset.addActionListener(这个); button_login.addActionListener(这个);//reg_name.addActionListener(这个); } 公共空间actionPerformed (ActionEvent e) { 字符串str=e.getActionCommand (); 布尔f=false; 字符串pw=零;//重置事件 如果(str.equals (“重置“)){ username.setText (“;”); password.setText (“;”); mes.setText (“;”); }//登录事件 如果(str.equals (“登陆“)){ mes.setText (“;”); Setjava模仿实现QQ登录界面的方法