我正在使用卡片布局来创建我的应用程序,我的 2 张卡片正在剪切相同的信息(其中一张您将数据输入到 textarea,而另一张则打印数据)。数据保存在 Frame 中。我已经在第二张卡片上添加了一个刷新功能来获取值并打印它,但我不知道如何触发它。
有没有可以绑定到这个函数的事件?或者任何其他方式从框架中获取卡片功能(这样我每次展示卡片时都可以触发它)?
谢谢'
我正在使用卡片布局来创建我的应用程序,我的 2 张卡片正在剪切相同的信息(其中一张您将数据输入到 textarea,而另一张则打印数据)。数据保存在 Frame 中。我已经在第二张卡片上添加了一个刷新功能来获取值并打印它,但我不知道如何触发它。
有没有可以绑定到这个函数的事件?或者任何其他方式从框架中获取卡片功能(这样我每次展示卡片时都可以触发它)?
谢谢'
通常有两种方法可以实现您的目标。就像您建议的那样,无论何时显示输出卡,您都可以更新/刷新它。这可以通过将ComponentListener添加到您用作输出卡的组件来完成。这样,您可以覆盖componentShown方法,以便它调用您的自定义刷新方法。请参阅此问题的已接受答案。
第二种选择是在任何数据发生更改时调用刷新 - 始终保持最新状态,即使它实际上不可见。根据您的应用程序的外观,这可能会以不同的方式完成。如果您有一个专用的数据模型,那么您可以使用Observer / Observable模式来通知来自内部模型的更改,或者您可以对模型进行硬编码以在更改时调用刷新。如果您只想直接从第一张卡上的输入字段中获取数据,那么您可以将该代码添加到它们各自的更改侦听器等中。