在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中文網其他相關文章!