java的gui界面编程总结_Java GUI界面编程举例

下面是简单的Java图形界面编程示例,作为笔者的复习笔记吧~

Test1:

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JOptionPane;

public class Test {

public static void main(String args[]) {

final JFrame frame = new JFrame("InternalConfirmDialog Example");

frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

frame.setBounds(200, 200, 400, 200);

JButton b = new JButton();

frame.getContentPane().add(b);

b.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

if (JOptionPane.showInternalConfirmDialog(frame.getContentPane(), "确认退出系统吗?", "退出",

JOptionPane.OK_CANCEL_OPTION,

JOptionPane.WARNING_MESSAGE) == JOptionPane.OK_OPTION) {

System.exit(0);

}

}

});

frame.setVisible(true);

}

}

Test2:

import java.awt.BorderLayout;

import java.util.Vector;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JTable;

import javax.swing.JScrollPane;

import javax.swing.border.EmptyBorder;

import javax.swing.event.TableModelEvent;

import javax.swing.event.TableModelListener;

import javax.swing.table.DefaultTableModel;

import javax.swing.table.JTableHeader;

public class Test extends JFrame{

private static final long serialVersionUID = -2518477425676861150L;

private JPanel mPanel;

private JTable mTable;

public static void main(String[] args){

Test test=new Test();

test.setVisible(true);

System.out.println("mainTestNew");

}

public Test(){

this.setTitle("MyTable");

this.setBounds(400, 200, 470, 310);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

final JScrollPane scrollPane=new JScrollPane();

mPanel=new JPanel();

mPanel.setBorder(new EmptyBorder(5,5,3,3));

mPanel.setLayout(new BorderLayout(0,0));

this.setContentPane(mPanel);

mPanel.add(scrollPane,BorderLayout.CENTER);

VectorcolumnNames=new Vector();

columnNames.add("Age");

columnNames.add("Height");

columnNames.add("Weight");

Vector>values=new Vector>();

for(int row=1;row<8;row++){

VectorrowData=new Vector();

rowData.add("A"+row);

rowData.add("B"+row);

rowData.add("C"+row);

values.add(rowData);

}

DefaultTableModel tableModel=new DefaultTableModel(values,columnNames);

mTable=new JTable(tableModel);

tableModel.addTableModelListener(new TableModelListener(){

public void tableChanged(TableModelEvent arg0) {

// TODO Auto-generated method stub

System.out.println("Table Changed Listener!");

}

});

JTableHeader tableHeader=mTable.getTableHeader();

tableHeader.setReorderingAllowed(false);

scrollPane.setViewportView(mTable);

}

}

javaGUI图形界面 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 ); } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值