2016-05-23 31 views
0
<fx:include source="MyCombo.fxml" fx:id="combo1" maxWidth="Infinity" GridPane.columnIndex="1" GridPane.rowIndex="2" /> 
    <Label text="Depotstelle" GridPane.columnIndex="2" GridPane.rowIndex="2" /> 
    <fx:include source="MyCombo.fxml" fx:id="combo2" maxWidth="Infinity" GridPane.columnIndex="3" GridPane.rowIndex="2" /> 
    <TextField fx:id="referenceText" maxWidth="Infinity" GridPane.columnIndex="5" GridPane.hgrow="ALWAYS" GridPane.rowIndex="2" /> 
    <fx:include source="MyCombo.fxml" fx:id="combo3" GridPane.columnIndex="1" GridPane.rowIndex="3" /> 

在FXML上面我有很多FXML包括使用相同的源FX標籤:包括源=「MyCombo.fxml」。可以這樣做嗎?會影響FXML加載器的性能(我在考慮I/O操作)?它是確定有很多FXML包括相同的FXML

回答

2

應該沒問題。你不會說有多少「多」。超過一千個包含可能會太多,但少於五十個包含像您的組合框定義可能的小fxml文件,不應該引起問題。

如果您對當前設計的性能有任何問題,您應該運行一些基準來查看緩慢點的位置。如果你沒有任何性能問題,那麼我不會擔心它,並會建議你選擇最適合你的最清晰的設計和實現。

作爲解決和考慮您在此提出的問題的一種方式,您可能有興趣閱讀分析which design is faster(不針對您的問題)的一些通用背景信息。

+0

我想知道FXML加載程序是否執行了很多I/O操作,或者它是否緩存了下一次讀取MyCombo.fxml的內容 –

+0

然後基準我們FXML文件的加載過程或研究加載程序源代碼以找出結果。 – jewelsea