【问题标题】:How to interact with swing components in different classes如何与不同类的swing组件交互
【发布时间】:2012-05-21 22:42:21
【问题描述】:

我只是想在脑海中想出一些关于从其他类中获取和从摆动组件中获取信息的事情。

我有一个主类,它使用几个类来构建一个摆动 gui。如何从另一个类向这些组件写入信息。据我了解,我需要使用数组列表来存储对这些组件的引用,但我不确定如何执行此操作,有人可以帮我吗?

【问题讨论】:

    标签: java swing


    【解决方案1】:

    我建议您尝试将 modelview 分开。不要在实际的 GUI 组件中存储与应用程序逻辑相关的数据。

    在数组列表中存储对组件的引用,然后通过数组列表和各种getText 方法访问数据对我来说似乎是个坏主意。

    将值存储在代表某个模型的对象中,并让 GUI 反映模型的状态。

    【讨论】:

    • 我将从组件中获取的数据将是 jtextarea 中的文本,这会改变什么吗?
    • 取决于您对文本的处理方式。但回到你的问题。你有什么不明白的?只需致电getText 即可获取组件的文本。这可以从任何班级完成。
    • 感谢您的回答,我现在只是无法掌握一些概念。让我困惑的部分是我有一个为 jtabbed 窗格创建选项卡的类,每个窗格都有一个 textarea。我希望能够在每个窗格的 textarea 中获取文本,但我不太确定如何执行此操作
    【解决方案2】:

    这是访问另一个类的方法的一种方式:

    public class MyFrame extends JFrame implements ActionListener 
    {
      private final MyBusinessClass bc = new MyBusnessClass();
    
      @Override public void actionPerformed(ActionEvent e) {
        this.bc.someBusinessMethod();
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2013-12-10
      • 2016-07-05
      • 2017-06-27
      • 2012-03-12
      • 2013-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-27
      相关资源
      最近更新 更多