gpt4 book ai didi

java - 在不同的类中使用 JTextArea

转载 作者:行者123 更新时间:2023-12-01 18:03:26 24 4
gpt4 key购买 nike

我有一个使用 Swing UI Designer 创建的 GUI 类。所有组件都自动设为私有(private),但现在我需要从 UI.class 外部的名为 consoleTextArea 的变量中输出一些文本当我将 consoleTextArea 设置为 public static 时,出现错误“UI.form:无法绑定(bind):字段是静态的:确实.UI.consoleTextArea”

...
public static JTextArea consoleTextArea;
...
...
UI.consoleTextArea.setText("abc");
...

\src\indeed\UI.form:无法绑定(bind):字段是静态的:indeed.UI.consoleTextArea

最佳答案

您可以通过 UI 类的实例更改标签/文本区域的值。

public class UI {

// ...

private TextArea consoleTextArea = new TextArea();
//
public void setTextInTextArea(String text) {
this.consoleTextArea.setText(text);
}
}

有了这样的 setter ,您可以从不同的类中操作您的textArea。然而,这个其他类必须能够访问 UI 实例,要么实例化它本身,要么将其作为参数传递

public class OtherClass {
UI ui = new UI();

public void doSomething() {
ui.setTextInTextArea("New text");
}

}

或者类似的东西:

public class OtherClass {
public void doSomething(UI ui) {
ui.setTextInTextArea("New Text");
}
}

关于java - 在不同的类中使用 JTextArea,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60596692/

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