从不同的Class更改JTextField的文本

时间:2011-07-10 02:13:52

标签: java swing netbeans jtextfield jsr296

如何从其他类

更改jTextField的文本

假设我有A类,如果我选择一个项目并单击创建帐户。我在jTabbedPane中添加了一个同名的标签。此选项卡是B类。 代码是:

点击“创建帐户”这个函数addclass(mainCB.getSelectedIndex())已被调用

 public void addclass(int a) {
    String s=(String) mainCB.getItemAt(a); //mainCB is variable name of combobox
    JComponent subpanel2=new B(); //added the class
    jTabbedPane1.add(s,subpanel2); //added new tab which is the new class
    B ob=new B(); //object of new class B
    ob.heading(s); //heading is the function in Class B
}

现在我如何更改A类的jTextField1文本。

B类中的

heading()函数如下:

public void heading(String s){
    head.setText(s); //head is the variable name of jTextField1 of class B
}

我已经发布了A类和B类的图像。

这是A类 class A


在jTabbedPane中添加的新面板是B类。这在A类中被调用。

Class B

1 个答案:

答案 0 :(得分:2)

您在B方法中创建了类addClass的两个实例。我认为在heading上调用subpanel2可以解决您的问题,B类型为public void addclass(int a) { String s=(String) mainCB.getItemAt(a); //mainCB is variable name of combobox B subpanel2=new B(); //added the class jTabbedPane1.add(s,subpanel2); //added new tab which is the new class subpanel2.heading(s); //heading is the function in Class B } 。这将是:

{{1}}

这是你想要的吗?