我是第一次使用 javax.swing 和 jframes,所以如果您发现这个问题很原始,请原谅。
问题:在我的主函数中,我创建了一个类的对象,可以说是 ClassTest。所以代码如下:
import TestPackage.ClassTest.*;
public class Qinterface extends JFrame and implements ActionListener
{
public string Login;
public static void main(String[] args){
ClassTest test = new ClassTest();
try{ eventqueue invoker ...}catch{}
}
Qinterface(){
setResizable(false);
setTitle("Carrefour : Qualys Application");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(300, 100, 850, 500);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
txtEnterText = new JTextField();
txtEnterText.setText("Enter Qualys Login");
txtEnterText.setBounds(10, 193, 166, 23);
contentPane.add(txtEnterText);
txtEnterText.setColumns(10);
btnSubmit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent eSubmit)
{
//button is pressed
System.out.println("You clicked the button Submit");
Login = txtEnterText.getText();}});
}
}
因此,如代码的最后一行所示,我能够从 txtEnterText 字段中获取值并分配给局部变量“Login”。但是,如果我想将此值分配给在主函数中创建的类的实例,例如,我该怎么做;
test.x=txtEnterText.getText();
我知道在这种方法中这是不可能的,因为我们在构造函数中 Qinterface 类和在 main 中实例化的 ClassTest 的变量是不可见的。
所以这个问题是一般性的和概念性的;在使用 javax.swing 编码时,您如何解决此类问题?