您的位置:首页 > 编程语言 > Java开发

Java学习笔记2:理解运行例程

2014-04-20 10:21 267 查看
1、将以下代码保存为login.java
import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class login extends JFrame

{

private JComboBox nameJComboBox;

private JPanel userJPanel;

private JLabel pictureJLabel;

private JButton okJButton,cancelJButton;

private JLabel nameJLabel,passwordJLabel,note;

private JPasswordField passwordJPasswordField;

private String name1;

private String password1;

private String user;

private ImageIcon myImageIcon;

public login( )

{

createUserInterface(); // 调用创建用户界面方法

}

private void createUserInterface()

{

Container contentPane = getContentPane();

contentPane.setLayout( null );

userJPanel = new JPanel();

userJPanel.setBounds( 35, 120, 300, 96 );

userJPanel.setBorder(BorderFactory.createEtchedBorder() );       //显示一圈边儿

userJPanel.setLayout( null );

contentPane.add( userJPanel );

nameJComboBox = new JComboBox();

nameJComboBox.setBounds( 100, 12, 170, 25 );

nameJComboBox.addItem( "admin" );

nameJComboBox.addItem( "aloie" );

nameJComboBox.setSelectedIndex( 0 );

nameJComboBox.setEditable(true);

userJPanel.add( nameJComboBox );

pictureJLabel=new JLabel();

pictureJLabel.setBounds(45,0,380,118);

pictureJLabel.setIcon(new ImageIcon("pic.gif"));

contentPane.add(pictureJLabel);

nameJLabel=new JLabel("姓  名:");

nameJLabel.setBounds(20,12,80,25);

userJPanel.add(nameJLabel);

passwordJPasswordField=new JPasswordField();

passwordJPasswordField.setBounds(100,60,170,25);

userJPanel.add(passwordJPasswordField);

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

passwordJLabel.setBounds(20,60,80,25);

userJPanel.add(passwordJLabel);

note=new JLabel("密码与用户名相同");

note.setBounds(0,295,180,25);

add(note);

okJButton=new JButton("登  陆");

okJButton.setBounds(60,250,80,25);

contentPane.add(okJButton);

okJButton.addActionListener(

new ActionListener()

{

public void actionPerformed(ActionEvent event)

{

okJButtonActionPerformed(event);

}

}

);

cancelJButton=new JButton("取  消");

cancelJButton.setBounds(210,250,80,25);

contentPane.add(cancelJButton);

cancelJButton.addActionListener(

new ActionListener()

{

public void actionPerformed( ActionEvent event )

{

System.exit(0);        //退出登陆

}

}

);

setTitle( "登陆窗口" );

setSize( 380, 350 );

setResizable( false );           //将最大化按钮设置为不可用

}

private void okJButtonActionPerformed( ActionEvent event )

{

//okJButton响应事件,检查用户名和密码的匹配

name1= nameJComboBox.getSelectedItem().toString();

if (name1.equals("admin") )

{

if (passwordJPasswordField.getText().equals("admin"))

{

showNewWindow();

setVisible( false);

} else

{

JOptionPane.showMessageDialog( this,"密码错误,拒绝登陆",

"密码错误 !", JOptionPane.ERROR_MESSAGE );

}

}

else if (name1.equals("aloie"))

{

if ( passwordJPasswordField.getText().equals("aloie") )

{

showNewWindow();

setVisible(false);

}

else

{

JOptionPane.showMessageDialog( this,"密码错误,拒绝登陆",

"密码错误 !", JOptionPane.ERROR_MESSAGE );

}

}

}

public void showNewWindow()

{

JFrame jf=new JFrame("main Frame");

jf.setSize(500,400);

jf.setVisible(true);

jf.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

}

public static void main( String[] args )

{

JFrame.setDefaultLookAndFeelDecorated(true);

login mylogin = new login( );

mylogin.setVisible( true );

mylogin.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

}

}

2、cd到login.java路径下,执行javac login.java,然后执行java login,运行结果如下:

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