【发布时间】:2014-07-21 22:21:03
【问题描述】:
我问这个是因为当我开始学习 GUI 时,我非常不喜欢其他人使用的方法,所以我自己做了这个方法。下面的代码是创建框架的类。
class Frame{
private JFrame frm;
private JLabel desc;
private JTextField username;
private JPasswordField password;
Frame(){
//Creating and setting the frame
frm = new JFrame();
frm.setLayout(new FlowLayout());
frm.setDefaultCloseOperation(frm.EXIT_ON_CLOSE);
frm.setResizable(true);
frm.setSize(300, 300);
frm.setLocationRelativeTo(null);
frm.setTitle("Default title");
//Initializing variables
desc = new JLabel("This is the description");
username = new JTextField("Username");
password = new JPasswordField("Password");
EventHandler handler = new EventHandler();
//Adding components to the frame
frm.add(desc);
frm.add(username);
frm.add(password);
//Handling the components
username.addActionListener(handler);
password.addActionListener(handler);
//Showing the frame
frm.setVisible(true);
}
class EventHandler implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getSource() == username){
JOptionPane.showMessageDialog(null, "You typed \"" + username.getText() + "\" inside the username box.");
} else if(event.getSource() == password){
JOptionPane.showMessageDialog(null, "You typed \"" + password.getText() + "\" inside the password box.");
}
}
}
}
在主类中简单地放一些类似
Frame frm = new Frame();
创建它。
【问题讨论】:
-
附注:类大写时代码更易于阅读。
-
未成年人,Java SE 中有一个类“java.awt.Frame”,所以如果你要保存它,你可能想要更改类名或给它一个包,以减少任何可能混乱。
-
其他人是如何创作的?
-
如果您包含“其他人”代码,我会很好,以便进行比较和对比。
标签: java class user-interface methods frame