-1

你能帮我解决这个问题吗?

首先是代码:

public RegistrationForm(){

    super("Registration Form (Assignment One)");
    setLayout(new GridLayout(6,2));

    l[0] = new JLabel("Name: ");
    l[0].setFont(new Font("Calibri Head",Font.BOLD,12));
    add(l[0]);

    tf[0] = new JTextField();
    tf[0].setToolTipText("Enter Your Full Name");
    add(tf[0]);


    l[1] = new JLabel("Age: ");
    l[1].setFont(new Font("Calibri Head",Font.BOLD,12));
    add(l[1]);

    tf[1] = new JTextField();
    tf[1].setToolTipText("Enter Your Age");
    add(tf[1]);

    l[2] = new JLabel("Birthday: ");
    l[2].setFont(new Font("Calibri Head",Font.BOLD,12));
    add(l[2]);

    tf[2] = new JTextField();
    tf[2].setToolTipText("Enter Your Birthday");
    add(tf[2]);

    l[3] = new JLabel("Address: ");
    l[3].setFont(new Font("Calibri Head",Font.BOLD,12));
    add(l[3]);

    tf[3] = new JTextField();
    tf[3].setToolTipText("Enter Your Address");
    add(tf[3]);

    l[4] = new JLabel("Contact Number: ");
    l[4].setFont(new Font("Calibri Head",Font.BOLD,12));
    add(l[4]);

    tf[4] = new JTextField();
    tf[4].setToolTipText("Enter Your Contact Number");
    add(tf[4]);

    b[0] = new JButton("Submit");
    b[0].addActionListener(this);
    add(b[0]);

    b[1] = new JButton("Clear");
    b[1].addActionListener(this);
    add(b[1]);
}

因此,当我向所有人输入一个值并按“提交”时,上一个课程将关闭,另一个课程将打开,它会显示我从上一个课程输入的内容的值。. .

JTextfields 没有默认值,我将自己输入值。

我怎样才能将一个值扔(我的意思是传递)另一个类?

这是我到目前为止的代码:

这是我的方法:

public String name(){
return tf[0].getText();
}

这是来自我的其他课程:

public Form{
RegistrationForm form = new RegistrationForm();

JTextField name = form.name();
add(name);
}
4

1 回答 1

3

你不需要扔任何东西。显示此对话框的任何类都将保存对此类实例的引用,并且可以在对话框返回后简单地查询字段的状态。如果对话框窗口是模态对话框,例如模态 JDialog 或 JOptionPane,这会容易得多。

例如,请看我在这个例子中的代码。

编辑
另外,这让我很困惑:

public Form{
  RegistrationForm form = new RegistrationForm();

  JTextField name = form.name();
  add(name);
}

此代码是否显示 RegistrationForm 对象?RegistrationForm 实际上是模态 JDialog 吗?从一个 GUI 中提取 JTextField 并将其添加到另一个 GUI 是非常不寻常的,我很确定您不想这样做。同样,您想要做的是:

  • 将您的 RegistrationForm 显示为模态JDialog。
  • 返回后,在 RegistrationForm 对象上调用 getter 方法,该方法提取对象的文本字段持有的字符串。

有关更多详细信息,您仍然需要告诉我们更多有关您的代码和问题的信息。

于 2013-03-30T23:20:32.667 回答