我有幾個標籤和幾個textFields的自定義組件。我需要實例化它3次,但每個版本都必須具有以不同字符串作爲前綴的所有標籤。如何將變量從控制器代碼傳遞給fxml視圖?
片段我的組件FXML的:
<Label text="inclusions type:"/>
<Label text="inclusions size:" GridPane.rowIndex="1"/>
<Label text="inclusions number:" GridPane.rowIndex="2"/>
我想實現某種代碼佔位符,如:
<Label text="$variable inclusions type:"/>
<Label text="$variable size:" GridPane.rowIndex="1"/>
<Label text="$variable number:" GridPane.rowIndex="2"/>
我會盡量避免注射的所有標籤一個接一個,因爲我知道沒有可能一次將所有標籤注入控制器,如前。 Collection<Label> allLabels;
問題:如何將字符串從控制器代碼傳遞到fxml視圖,避免重複和不必要的工作?
如果要動態地添加組件,您應該實例,並將其在Java代碼中添加場景! Fxml用於手動定義靜態組件。在Fxml文件中使用動態組件毫無意義。 – Omid
我明白,但將.fxml文件和「Swing style」代碼放在一起對我來說並不好。但我有些迂腐:D –
我想我誤解了。如果你想注入標籤的文本的一部分,而不是許多帶有一些可變文本的標籤,這是有道理的! – Omid