我有非常简单的程序和非常糟糕的错误-_- 在我的程序中,我有ScrollPane,它包含Accordion。 ScrollPane prefHeightProperty绑定到Accordion heightProperty。
themeScroll.prefHeightProperty().bind(themeAccordion.heightProperty());
当我崩溃titledPane时,手风琴的高度会降低。并且ScrollPane的高度也必须降低到Accordion的高度,但直到最后它才会降低。
(ScrollPane有绿色背景)
然后我最小化窗口并重新打开它并看到:
我该如何避免这个问题?
UPD 1:
我知道我需要调用此代码来调整scrollPane的大小:
Platform.runLater(() -> {
themeScroll.requestLayout();
});
但是在哪里?
我试图在themeAccordion.expandedPaneProperty.addListener(...)
中调用它,但它没有帮助
如果我在themeAccordion.heightProperty().addListener(...)
中调用它,那么问题就解决了,但这个代码themeScroll.requestLayout();
被调用很多次都很糟糕。