我正在学习Java和GUI。我有一些问题,首先是创建JFrame的子类和JFrame的实例之间有什么主要区别。看起来像一个子类更强大?我也想知道是否有必要使用创建GUI时这个代码:关于Java GUI并清除JFrame以显示新内容?
Container contentPane = getContentPane();
contentPane.setLayot(new Flowlayout());
添加我的GUI类,这是一个简单的测试,到目前为止,到我手的任务。当用户输入。文本框中的一些文本,然后按按钮继续下一步,我该如何清除框架并显示新内容,或者有没有一种特殊的方法可以在Java中执行此操作?我想最好是使用相同的窗口而不是创建新的!?帮助ID preciated!由于
// Gui class
import java.awt.FlowLayout; // layout
import java.awt.event.ActionListener; // listener
import java.awt.event.ActionEvent; // event
import javax.swing.JFrame; // windows properties
import javax.swing.JLabel; // row of text
import javax.swing.JTextField; // enter text
import javax.swing.JOptionPane; // pop up dialog
import javax.swing.JButton; // buttons
// import.javax.swing.*;
public class Gui extends JFrame {
private JLabel text1;
private JTextField textInput1;
private JTextField textInput2;
private JButton nextButton;
// constructor creates the window and it's components
public Gui() {
super("Bank"); // title
setLayout(new FlowLayout()); // set default layout
text1 = new JLabel("New customer");
add(text1);
textInput1 = new JTextField(10);
add(textInput1);
nextButton = new JButton("Continue");
add(nextButton);
// create object to handle the components (action listener object)
frameHandler handler = new frameHandler();
textInput1.addActionListener(handler);
nextButton.addActionListener(handler);
}
// handle the events (class inside another class inherits contents from class outside)
private class frameHandler implements ActionListener {
public void actionPerformed(ActionEvent event){
String input1 = "";
// check if someone hits enter at first textfield
if(event.getSource() == textInput1){
input1 = String.format(event.getActionCommand());
JOptionPane.showMessageDialog(null, input1);
}
else if(event.getSource() == nextButton){
// ??
}
}
}
}