2012-10-29 44 views
2

的自定義組件的類之間的通信正確的MVC方法我已經寫在fxml語言(我將引薦爲孩子或孩子),我使用的JavaFX Scene Builder創建一個自定義JavaFX-2組件。我的一個視圖類需要顯示幾個(〜100個)這些組件並與它們進行通信。考慮到MVC架構,通信的最佳途徑是什麼?對JavaFX的2

  1. (容器)模型 - >(兒童)型號
  2. (容器)控制器 - >(兒童)控制器
  3. (容器)控制器 - >(兒童)型號

基本上我至少需要能夠監視在子UI和/或容器對象中發生的事件的兩種情況。

案例1:用戶點擊了我的自定義組件(子)中存在的按鈕(或與另一個對象交互),容器必須傳達有關更改的信息。

案例2:用戶在容器上觸發的事件,過濾基於例如特定查詢的組件,我需要給孩子們傳達這個變化。

在此先感謝您的幫助。乾杯

回答

1

我總是傾向於保持控制器之間的通信,而我的模型是POJO,雖然他們使用JavaFX的屬性來存儲數據。這似乎映射到選項#2。

這是相當容易父控制器調用子控制器,所有它做的是加載它們並保持在列表中。調用父母的孩子會更難看,因爲它可能需要引用父母。我試圖通過讓子控制器,家長增加了一個監聽器上的事件處理財產避免這種情況。這使我的孩子控制可重用。

+0

是,使用控制器控制器似乎是正確的做法。非常感謝你 –