不那麼優雅,硬編碼而直接的方式似乎再次與CSS發揮:
/* The default css of chart legend in caspian. */
.chart-legend {
-fx-background-color: #cccccc, #eeeeee;
-fx-background-insets: 0,1;
-fx-background-radius: 6,5;
-fx-padding: 6px;
}
/* We customize the above default background-color to transparent for
the chart legend on the right side, in our own CSS file. */
#my-legend-on-the-right-side .chart-legend {
-fx-background-color: transparent;
-fx-background-insets: 0,1;
-fx-background-radius: 6,5;
-fx-padding: 6px;
}
/* Then we customize the legend on the left side by padding
it to the left while its background covers the legend on the right. */
#my-legend-on-the-left-side .chart-legend {
-fx-background-color: #cccccc, #eeeeee;
-fx-background-insets: 0,1;
-fx-background-radius: 6,5;
-fx-padding: 6px 300px 6px 6px;
}
通過設置IDS使用它們:
barChartTotal.setId("my-legend-on-the-left-side");
barChartPhases.setId("my-legend-on-the-right-side");
不知道我是多麼懷念/間隔上填充作爲解決方案,但它是。雖然有點笨重,但它完成了工作。謝謝! 作爲一個方面說明,通過向右側添加左側填充,我可以將其移過來,以便圖例保持居中在圖表下方,而沒有一堆填充物粘到一邊。看起來有點清潔。所以不是'-fx-padding:6px;',而是''-fx-padding:6px,6px,6px,100px;'在右邊。 –
@PaulMarshall。不客氣,是的,另一種對稱的方式也適用。 –