qq模拟登入界面
一.设计概述
1.使用java所学知识,做一个qq登入模拟界面,如图所示。
QQ登录界面整体可以看做一个容器窗口,使用JFrame容器来实现,从登录界面的布局效果和显示内容可以看出,该布局分为五个区域,顶部区域、左侧区域、中间区域、右侧区域、和底部区域,因此使用BorderLayout来管理页面布局,每个区域使用Jpanel面板组件进行填充
二.代码实现
1.第一个类为QQ主要实现一个大的组件和调用其他5个Jpanel.代码如下:
package qqlogin;
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
public class QQ {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable(){
@Override
public void run() {
// TODO Auto-generated method stub
method1();
}
}
);
}
public static void method1(){
//顶级容器JFrame
JFrame jf =new JFrame();
jf.setBounds(497, 242, 426, 300);
//禁止修改窗口大小
jf.setResizable(false);
//设置窗口边框不显示
jf.setUndecorated(true);
jf.setLayout(new BorderLayout());
jf.setVisible(true);
JPanel topPanel=Createpanel.createTopPanel();
jf.add(topPanel,BorderLayout.PAGE_START);
JPanel leftPanel=Createpanel.createLeftPanel();
jf.add(leftPanel,BorderLayout.LINE_START);
JPanel centerpanel=Createpanel.createCentPanel(jf);
jf.add(centerpanel,BorderLayout.CENTER);
JPanel rightpanel=Createpanel.createRightPanel();
jf.add(rightpanel,BorderLayout.LINE_END);
JPanel endpanel=Createpanel.createEndPanel();
jf.add(endpanel,BorderLayout.PAGE_END);
}
}
- 第二个类为Createpanel主要用于创建5个JPanel实现。代码如下:
package qqlogin;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
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