2012年5月31日 星期四

Java Basic(54)-Event Handler Program


import java.awt.FlowLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JFrame; 導入你必須需要什麼
import javax.swing.JTextField;
import javax.swing.JPasswordField;
import javax.swing.JOptionPane;

public class tuna extends JFrame{
private JTextField item1;
private JTextField item2; 三個TextFieldpasswordField
private JTextField item3;
private JPasswordField passwordField;
public tuna(){
super("The title");
setLayout(new FlowLayout());
item1 = new JTextField(10); 設置項目(constructor
add(item1);
item2 = new JTextField("enter text here");
add(item2);
item3 = new JTextField("uneditable");
item3.setEditable(false);
add(item3);
passwordField = new JPasswordField("mypass");
add(passwordField);
thehandler handler = new thehandler(); 創建新對象
item1.addActionListener(handler); 設置處理程序(handler)
item2.addActionListener(handler);
item3.addActionListener(handler);
passwordField.addActionListener(handler);
}
private class thehandler implements ActionListener{ 必須這樣
public void actionPerformed(ActionEvent event){
String string = "";
if(event.getSource()==item1)
string=String.format("field 1: %s", event.getActionCommand());
else if(event.getSource()==item2)
string=String.format("field 2: %s", event.getActionCommand());
else if(event.getSource()==item3)
string=String.format("field 3: %s", event.getActionCommand());
else if(event.getSource()==passwordField)
string=String.format("password field is: %s" , event.getActionCommand());
JOptionPane.showMessageDialog(null, string); 顯示文字TextField
}
}
}

import javax.swing.JFrame;


class apples{
public static void main(String[] args){
tuna bucky = new tuna();
bucky.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
bucky.setSize(350, 100);
bucky.setVisible(true);
}

這是運行時的結果: 





}

沒有留言:

張貼留言