0

我有两个表格,第一个是 form_1,第二个是 form_2。form_1 包含一个文本字段 photo_id_num。我通过 .getText 方法获得它的价值。

public String getID()
{
    String id1=photo_id_num.getText(); 
    return(id1);
} 

现在我想将此值访问为第二种形式。第二种形式的代码是

 Form_1 frm=new Form_1();
 String id2=frm.getID();
 System.out.println("ID2="+id2);

但它不起作用。请帮我。

4

4 回答 4

2

在form1界面

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String id=jTextField1.getText();
form2 form=new form2(id);
form.setVisible(true);
// TODO add your handling code here:
    }

在 form2 界面中

公共类 form2 扩展 javax.swing.JFrame {

/** Creates new form form2 */
public form2(String id) {
    initComponents();
    String id1=id;
    jTextField1.setText(id1);
}
于 2012-07-30T09:41:26.863 回答
0
Form_1 frm=new Form_1();
String id2=frm.getID();

在使用值之前,允许在表单中输入 ID。如果两个表单都是从同一个源打开的,那么将Form_1对象传递给Form_2而不是创建一个Form_1inForm_2

于 2012-06-18T11:53:21.267 回答
0

Form_1这是因为您在调用它之前正在创建一个新getId的。您需要使用JTextField已经创建的并使用它来设置表单的 ID。在生成的代码中查找文本字段的变量名称并从该字段中获取文本。使用该文本在表单中设置 ID,然后在 form_1 上调用 getId 并将 setText 中返回的内容用于其他字段。

编辑再次查看您的 getId,我发现您有设计问题。阅读有关耦合内聚的信息。它会让你的生活更轻松。

于 2012-06-18T11:54:46.527 回答
0

看看你的控制台输出,可能是一些 Null Pointer 异常被抛出

于 2012-06-18T11:47:32.697 回答