gpt4 book ai didi

java - 如何从 Java 中的另一个类访问组合框

转载 作者:行者123 更新时间:2023-12-01 12:21:09 25 4
gpt4 key购买 nike

comboBoxEnv在 Java 中,当组合框完全位于不同的类中时,是否可以访问它?我想将它作为一个整体使用,而不仅仅是传递它的值。

我有两个类 - 每个类都有一个 GUI。我有我的 main.java (主)类和我的 ExportImportWindow.java

我正在尝试访问我在 ExportImportWindow 类中使用的名为comboBoxEnv的组合框

目前我的主类中的代码引用/使用了错误的组合框,称为组合框。

它导致写入文件的信息是不正确的信息。

我的主要代码是这样的:

if (comboBox.getSelectedItem() == null ){

JOptionPane.showMessageDialog( null, "Please choose an ei");
}

else {

String env = comboBox.getSelectedItem().toString();

ExportImportWindow frm = new ExportImportWindow("Export",env,xmlFile , null, me);

frm.setVisible( true );
}

我不确定如何访问位于其他类中的正确组合框,就像这样。我已经在代码顶部声明了它,以便尝试在我的主类中访问它。

public final JComboBox comboBoxEnv ;

public ExportImportWindow( final String mode, final String env,String FromFile,String ToFile, final Main main){

comboBoxEnv = new JComboBox();

//other code to populate comboBoxEnv
}

这是我上次尝试失败后目前所拥有的:

    ExportImportWindow exportImport = new ExportImportWindow(//not sure what to pass through);
exportImport.comboBoxEnv; // trying to access the method the ComboBoxEnv sits in

我觉得我看的所有文章都只是询问如何传递值,是否我想使用整个组合框而不仅仅是它的值。非常感谢任何能够分享这方面知识的人。我确实可以访问它,但只是将其创建为一种不起作用的方法。

最佳答案

您可以在 ImpexWindow 中定义 getter(更好),或者只使用类的字段,因为该字段是公共(public)的(不推荐方式)。

因此,在您的 ExportImportWindow 中,您应该保留对定义组合框的 ImpexWindow 的引用,并使用 ImpexWindow 的 字段

关于java - 如何从 Java 中的另一个类访问组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26652310/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com