当前位置: 代码迷 >> J2SE >> java做的qq登陆界面不能显示出密码那个框,该如何处理
  详细解决方案

java做的qq登陆界面不能显示出密码那个框,该如何处理

热度:117   发布时间:2016-04-24 01:25:07.0
java做的qq登陆界面不能显示出密码那个框
/**
 * 仿制QQ登陆界面
 */
package UI;
import javax.swing.*;

import java.awt.*;
public class LoginQQ extends JFrame{
//定义常用的组件
//北部的区域的JLabel
JLabel jl1;
JPanel jp5;
//南部区域
JButton jb1,jb2,jb3;
JPanel jp1;
//中部区域
JTabbedPane jtp;//选项卡窗格
JPanel jp2,jp3,jp4;
JLabel jl2,jl3,jl4,jl5;
//号码文本框
JTextField jtf1;
//密码
JPasswordField jpf;
//清除号码的Button
JButton jb4;
//隐身,登陆
JCheckBox jcb1,jcb2;

public static void main(String[] args) {
LoginQQ login=new LoginQQ();

}
//创造组件的操作
public LoginQQ(){
jl2=new JLabel("QQ号码:",JLabel.CENTER);
jl3=new JLabel("QQ密码:",JLabel.CENTER);
jl4=new JLabel("忘记密码",JLabel.CENTER);
jl4.setFont(new Font("宋体",Font.PLAIN,12));//设置字体样式
jl4.setForeground(Color.BLUE);//设置字体的颜色
jl5=new JLabel("<html><a href='www.qq.com'>申请密码保护</a></html>");
//当鼠标移动到上边时候变成一只手
jl5.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
//输入号码框
jtf1=new JTextField();
//输入密码框
jpf=new JPasswordField();

jb4=new JButton("删除账号");
//复选框的操作
jcb1=new JCheckBox("隐身登陆");
jcb2=new JCheckBox("记住密码");

//北部区域
jl1=new JLabel(new ImageIcon("images/touxiang.jpg"));
jp5=new JPanel();
jp5.add(jl1);


//南部区域
jp1=new JPanel();

jb1=new JButton("登陆");
jb2=new JButton("取消");
jb3=new JButton("向导");

jp1.add(jb1);
jp1.add(jb2);
jp1.add(jb3);


//中部区域
jtp=new JTabbedPane();
jp2=new JPanel();
jp3=new JPanel();
jp4=new JPanel();
jp3.setBackground(Color.red);
jp4.setBackground(new Color(0,0,255));

//给面板添加到选项卡窗格上
jtp.add("QQ号码",jp2);
jtp.add("手机号码",jp3);
jtp.add("电子邮件",jp4);

jp2.setLayout(new GridLayout(3,3));

jp2.add(jl2);
jp2.add(jtf1);
jp2.add(jb4);

jb2.add(jl3);
jb2.add(jpf);
jp2.add(jl4);

jp2.add(jcb1);
jp2.add(jcb2);
jp2.add(jl5);

this.add(jp1,BorderLayout.SOUTH);
this.add(jp5,BorderLayout.NORTH);
this.add(jtp,BorderLayout.CENTER);

//展现组件
this.setIconImage(new ImageIcon("images/icon.jpg").getImage());
this.setTitle("腾讯qq");
this.setResizable(false);
this.setSize(300, 250);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);


}

}


------解决方案--------------------
布局方式
------解决方案--------------------
Java code
/** * 仿制QQ登陆界面 */import javax.swing.*;import java.awt.*;public class LoginQQ extends JFrame {    // 定义常用的组件    // 北部的区域的JLabel    JLabel jl1;    JPanel jp5;    // 南部区域    JButton jb1, jb2, jb3;    JPanel jp1;    // 中部区域    JTabbedPane jtp;// 选项卡窗格    JPanel jp2, jp3, jp4;    JLabel jl2, jl3, jl4, jl5;    // 号码文本框    JTextField jtf1;    // 密码    JPasswordField jpf;    // 清除号码的Button    JButton jb4;    // 隐身,登陆    JCheckBox jcb1, jcb2;    public static void main(String[] args) {        LoginQQ login = new LoginQQ();    }    // 创造组件的操作    public LoginQQ() {        jl2 = new JLabel("QQ号码:", JLabel.CENTER);        jl3 = new JLabel("QQ密码:", JLabel.CENTER);        jl4 = new JLabel("忘记密码", JLabel.CENTER);        jl4.setFont(new Font("宋体", Font.PLAIN, 12));// 设置字体样式        jl4.setForeground(Color.BLUE);// 设置字体的颜色        jl5 = new JLabel("<html><a href='www.qq.com'>申请密码保护</a></html>");        // 当鼠标移动到上边时候变成一只手        jl5.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));        // 输入号码框        jtf1 = new JTextField(8);        // 输入密码框        jpf = new JPasswordField(8);        jb4 = new JButton("删除账号");        // 复选框的操作        jcb1 = new JCheckBox("隐身登陆");        jcb2 = new JCheckBox("记住密码");        // 北部区域        jl1 = new JLabel(new ImageIcon("images/touxiang.jpg"));        jp5 = new JPanel();        jp5.add(jl1);        // 南部区域        jp1 = new JPanel();        jb1 = new JButton("登陆");        jb2 = new JButton("取消");        jb3 = new JButton("向导");        jp1.add(jb1);        jp1.add(jb2);        jp1.add(jb3);        // 中部区域        jtp = new JTabbedPane();        jp2 = new JPanel();        jp3 = new JPanel();        jp4 = new JPanel();        jp3.setBackground(Color.red);        jp4.setBackground(new Color(0, 0, 255));        // 给面板添加到选项卡窗格上        jtp.add("QQ号码", jp2);        jtp.add("手机号码", jp3);        jtp.add("电子邮件", jp4);        jp2.setLayout(new GridLayout(3, 3));        JPanel pnl1 = new JPanel();        pnl1.setLayout(new FlowLayout(FlowLayout.LEFT,0,15));        jp2.add(jl2);        pnl1.add(jtf1);        jp2.add(pnl1);        jp2.add(jb4);        JPanel pnl2 = new JPanel();        pnl2.setLayout(new FlowLayout(FlowLayout.LEFT,0,13));        jp2.add(jl3);        pnl2.add(jpf);        jp2.add(pnl2);        jp2.add(jl4);                jp2.add(jcb1);        jp2.add(jcb2);        jp2.add(jl5);        this.add(jp1, BorderLayout.SOUTH);        this.add(jp5, BorderLayout.NORTH);        this.add(jtp, BorderLayout.CENTER);        // 展现组件        this.setIconImage(new ImageIcon("images/icon.jpg").getImage());        this.setTitle("腾讯qq");        this.setResizable(false);        this.setSize(300, 250);        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        this.setVisible(true);    }}
  相关解决方案