您的位置:首页 > 产品设计 > UI/UE

黑马程序员 ----java基础 GUI用户登入界面

2014-11-18 11:01 411 查看
 黑马程序员  《JAVA程序设计》  

 

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class /*MainFrame*/dengru extends JFrame implements ActionListener{

    private Container cont;

    private JPanel panelMenu;

    private JPanel panelToolBar;

    private JPanel panelCompent;

    private JButton btnLeft;

    private JButton btnCenter;

    private JButton btnRight;

    private JButton btnBorder;

    private JButton btnGrid;

    private JLabel labHit;

    private JMenuBar menuBar;

    private JMenu menuOperation;

    private JMenu menuHelp;

    private JMenuItem mItemFlowLeft;

    private JMenuItem mItemFlowCenter;

    private JMenuItem mItemFlowRight;

    private JMenuItem mItemBorder;

    private JMenuItem mItemGrid;

    private JToolBar toolBar;

    private JButton tBtnLeft;

    private JButton tBtnCenter;

    private JButton tBtnRight;

    private JButton tBtnBorder;

    private JButton tBtnGrid; 

    public MainFrame(){

        this.setTitle("第一个界面");

        this.setBounds(300, 300, 600, 450);

        this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);

        cont = this.getContentPane();

//        cont.setLayout(new GridLayout(3, 9));

        cont.setLayout(null);

        initPanel();

        initMenu();

        initToolBar();

        initCompent();

        addMenu();

        addCompent();

//        addBorderCompent();

        this.setVisible(true);

    }

    public void initPanel(){

        panelMenu = new JPanel();

        panelMenu.setLayout(new FlowLayout(FlowLayout.LEFT));

        panelMenu.setBounds(0, 0, 600, 30);

        panelToolBar = new JPanel();

        panelToolBar.setLayout(new FlowLayout(FlowLayout.LEFT));

        panelToolBar.setBounds(0, 30, 600, 50);

        panelCompent = new JPanel();

        panelCompent.setLayout(new GridLayout(3, 2));

        panelCompent.setBounds(0, 80, 600, 350);

        cont.add(panelMenu);

        cont.add(panelToolBar);

        cont.add(panelCompent);

    }

    public void initMenu(){

        menuBar = new JMenuBar();

        menuOperation = new JMenu("布局操作");

        menuHelp = new JMenu("帮助");

        mItemFlowLeft = new JMenuItem("流式左布局");

        mItemFlowLeft.addActionListener(this);

        mItemFlowCenter = new JMenuItem("流式居中");

        mItemFlowCenter.addActionListener(this);

        mItemFlowRight = new JMenuItem("流式右布局");

        mItemFlowRight.addActionListener(this);

        mItemBorder = new JMenuItem("边界布局");

        mItemBorder.addActionListener(this);

        mItemGrid = new JMenuItem("网格布局");

        mItemGrid.addActionListener(this);

    }

    public void initToolBar(){

        toolBar = new JToolBar();

        tBtnLeft = new JButton(new ImageIcon("COPY.jpg"));

         tBtnLeft.addActionListener(this);

        tBtnLeft.setToolTipText("流式左布局");

        tBtnCenter = new JButton(new ImageIcon("HELP.jpg"));

        tBtnCenter.addActionListener(this);

        tBtnCenter.setToolTipText("流式居中");

        tBtnRight = new JButton(new ImageIcon("find.jpg"));

         tBtnRight.addActionListener(this);

        tBtnRight.setToolTipText("流式右布局");

        tBtnBorder = new JButton(new ImageIcon("CUT.jpg"));

        tBtnBorder.addActionListener(this);

        tBtnBorder.setToolTipText("边界布局");

        tBtnGrid = new JButton(new ImageIcon("OPEN.jpg"));

        tBtnGrid.addActionListener(this);

        tBtnGrid.setToolTipText("网格布局");

        toolBar.add(tBtnLeft);

        toolBar.add(tBtnCenter);

        toolBar.add(tBtnRight);

        toolBar.add(tBtnBorder);

        toolBar.add(tBtnGrid);

        panelToolBar.add(toolBar);

    }

    public void initCompent(){

        btnLeft = new JButton("LEFT");

        btnLeft.addActionListener(this);

        btnRight = new JButton("RIGHT");

        btnRight.addActionListener(this);

        btnCenter = new JButton("CENTER");

        btnCenter.addActionListener(this);

        btnBorder = new JButton("BORDER");

        btnBorder.addActionListener(this);

        btnGrid = new JButton("GRID");

        btnGrid.addActionListener(this);

        labHit = new JLabel("提示");

    }

    public void addMenu(){

        menuOperation.add(mItemFlowLeft);

        menuOperation.add(mItemFlowCenter);

        menuOperation.add(mItemFlowRight);

        menuOperation.add(mItemBorder);

        menuOperation.add(mItemGrid);

        menuBar.add(menuOperation);

        menuBar.add(menuHelp);

        panelMenu.add(menuBar);

    }

    public void addCompent(){

        panelCompent.add(btnLeft);

        panelCompent.add(btnCenter);

        panelCompent.add(btnRight);

        panelCompent.add(btnBorder);

        panelCompent.add(btnGrid);

        panelCompent.add(labHit);

    }

    public void addBorderCompent(){

        panelCompent.add(btnLeft, "West");

        panelCompent.add(btnCenter, "Center");

        panelCompent.add(btnRight, "East");

        panelCompent.add(btnBorder, "North");

        panelCompent.add(btnGrid, "South");

    }

    public void actionPerformed(ActionEvent aEvt){

        if((btnLeft == aEvt.getSource())

          ||(mItemFlowLeft == aEvt.getSource())

             ||(tBtnLeft == aEvt.getSource())){

            panelCompent.setLayout(new FlowLayout(FlowLayout.LEFT));

            labHit.setText("流式布局管理器左靠齐");

        }

        else {

            if((btnRight == aEvt.getSource())

              ||(mItemFlowRight == aEvt.getSource())

                   ||(tBtnRight == aEvt.getSource())){

                panelCompent.setLayout(new FlowLayout(FlowLayout.RIGHT));

                labHit.setText("流式布局管理器右靠齐");

             }

     else {

                if((btnCenter == aEvt.getSource())

                  ||(mItemFlowCenter == aEvt.getSource())

                    ||(tBtnCenter == aEvt.getSource())){

                    panelCompent.setLayout(new FlowLayout(FlowLayout.CENTER));

                    labHit.setText("流式布局管理器中靠齐");

                 }

   else {

                     if((btnBorder == aEvt.getSource())

                       ||(mItemBorder == aEvt.getSource())

                          ||(tBtnBorder == aEvt.getSource())){

                         panelCompent.setLayout(new BorderLayout());

                         addBorderCompent();

                         labHit.setText("边界布局管理器");

                      }

                      else{

                          if((btnGrid == aEvt.getSource())

                            ||(mItemGrid == aEvt.getSource())

                            ||(tBtnGrid == aEvt.getSource())

                                 ){

                              panelCompent.setLayout(new GridLayout(3, 2));

//                              addBorderCompent();

                              labHit.setText("网格布局管理器");

                          }

                      }

           }

       }

   }

   }

}

 

//LoginFrame.java

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

class LoginFrame extends JFrame implements ActionListener{

    private Container cont;

    private JLabel labUserName;

    private JLabel labPassword;

    private JTextField txtUserName;

    private JTextField txtPassword;

    private JButton btnOK;

    private JButton btnCancel;

    public LoginFrame(){

        this.setTitle("登录界面");

        this.setSize(300, 250);

        this.setLocation(300, 300);

        this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);

        initCont();

        initCompent();

        addCompent();

        this.setVisible(true);

    }

    public void initCont(){

        cont = this.getContentPane();

        cont.setLayout(null);

    }

    public void initCompent(){

        labUserName = new JLabel("用户名:");

        labPassword = new JLabel("密  码:");

        txtUserName = new JTextField();

        txtPassword = new JPasswordField();

        btnOK = new JButton("登录");

        btnCancel = new JButton("重置");

    }

    public void addCompent(){

          cont.add(labUserName);

          labUserName.setBounds(40,40,80,30);

          cont.add(labPassword);

          labPassword.setBounds(40,90,80,30);

          cont.add(txtUserName);

          txtUserName.setBounds(120,40,120,30);

          cont.add(txtPassword);

          txtPassword.setBounds(120,90,120,30);

          cont.add(btnOK);

          btnOK.addActionListener(this);

          btnOK.setBounds(60,170,80,30);

          cont.add(btnCancel);

          btnCancel.addActionListener(this);

          btnCancel.setBounds(160,170,80,30);

         

    }

    public void actionPerformed(ActionEvent aEvt){

         if(aEvt.getSource() == btnOK){

             if((txtUserName.getText().equals("denghong"))

                &&(txtPassword.getText().equals("123"))){

                 new MainFrame();

                 this.dispose();

             }

            

         }

         else{

             if(aEvt.getSource() == btnCancel){

                 labUserName.setText("");

                 labPassword.setText("");

             }

         }

    }

}

 

//Test.java

public class Test{

    public static void main(String[] args){

          new LoginFrame();

    }

}

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: