【问题标题】:Getting action events of buttons placed in a different component获取放置在不同组件中的按钮的动作事件
【发布时间】:2011-07-07 16:08:06
【问题描述】:

是否可以在放置它的组件之外显示按钮。我的问题似乎很奇怪,但情况是:我有一个 JFrame。我还有一个 JPanel 类,在其中我覆盖了paintComponent() 方法、getPreferredSize() 方法等。我创建了一个 JPanel 子类的对象并将其放入 JFrame 中。到现在为止还挺好。现在我希望 JPanel 中的内容根据按钮单击来运行。但我不想将按钮放在 JPanel 内,因为它会阻止面板内进行一些动画。所以我会把它放在 JPanel 之外,也许放在 JFrame 中的另一个 JPanel 中。但是,我如何将第二个面板内发生的按钮单击事件放入第一个面板中。

【问题讨论】:

    标签: java swing event-handling jpanel


    【解决方案1】:

    在这个animation 中,SubwayPanel 可以访问控制模拟某个方面的ButtonPanel。当计时器触发时,SubwayPanel 可以通过ButtonPanel#getButton() 检查按钮的状态。

    附录:更通用的解决方案是使用Action,它“可用于将功能和状态与组件分开”。这是一个相关的example

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-14
      • 1970-01-01
      • 2021-02-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多