我正在尝试使用Neatbeans创建GUI, 它有两个框架.. Frame1和Fram2 Frame1得到:
2个jTextFields和1个jButton
如果我在jTextField(1& 2)中输入了存档,我点击“完成”按钮.. 应该出现Frame2并且它sholud显示来自Frame1的id和名称(jTextField(1& 2))
在Frame2的jLabel(1& 2)..内部
以下代码在按钮中:
int id= Integer.parseInt(jTextField1.getText());
String name=jTextField2.getText();
Frame2 f2=new Frame2();
f2.setVisible(true);
我在Frame2中创建了一个重载的构造函数:
public Frame2(int id, String name) {
initComponents();
jLabel1.setText(String.valueOf(id));
jLabel2.setText(name);
}
当我点击按钮时,它会移动到Frame2,但它不显示数据(id& name)???
任何人都可以帮忙???
答案 0 :(得分:0)
我真的不明白你的尝试,但你可以做这样的事情。它应该运行,只需添加必要的导入。也许这是你想要做的事情。
public class MainFrame extends JFrame {
private String name = "ASN";
private int id = 1;
private JButton button = new JButton("Open");
private OtherFrame oFrame = new OtherFrame();
public MainFrame(){
add(button);
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
oFrame.setVisible(true);
}
});
add(oFrame);
oFrame.setVisible(false);
setVisible(true);
}
public static void main(String[] args){
SwingUtilities.invokeLater(new Runnable(){
public void run(){
new MainFrame();
}
});
}
private OtherFrame extends JFrame {
private JLabel label = new JLabel();
private JButton button1 = new JButton("show");
public OtherFrame(){
add(label);
add(button1);
button1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
label.setText(name + " " + ID);
}
});
}
}
}
答案 1 :(得分:0)
接下来你的问题是你创建了一个构造函数(public Frame2(int id , String name)
),但是你调用了另一个Frame2 f2=new Frame2();
。将Frame2 f2=new Frame2();
替换为Frame2 f2=new Frame2(id, name);
它会对您有所帮助。