在 Main 类 Main.java 中,我们有多个窗格,包括 PaneWithList 和 Output 。 PaneWithList 包含一个显示数据的 JList,而 Output 是一个 JTextPane,应显示 JList 中选择的数据。问题出现了:我们如何将 PaneWithList 连接到 Output 来实现这一点?
一个潜在的解决方案是使用 PropertyChangeSupport。此机制允许 PaneWithList 在选择 JList 中的行时触发事件。 Main 可以侦听此事件并相应地更新输出 JTextPane。
另一种方法是使用观察者模式。在此模式中,PaneWithList 是一个可观察对象,当数据更改时通知其观察者。 Output 可以是监听这些更改并自行更新的观察者。
提供的代码片段演示了如何实现观察者模式以将 PaneWithList 连接到 Output:
import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; class ObserverPanel extends JPanel { private JLabel title = new JLabel("Value received: "); private JLabel label = new JLabel("null", JLabel.CENTER); public ObserverPanel() {
以上是如何将一个 JPanel 中的 JList 连接到另一个 JPanel 中的 JTextPane?的详细内容。更多信息请关注PHP中文网其他相关文章!