2013-10-01 39 views
6

我正在開發一個JavaFX應用程序,其中根據用戶在ListView控件中單擊的條目,開發了一個類(從javafx.scene.Parent擴展而來)。JavaFX節點 - 如何使它們可由最終用戶調整大小?

爲了清楚這個節點,它不是使用像SceneBuilder這樣的佈局工具創建的,它是在運行時根據用戶的操作創建的。

我的自定義節點類的構造函數創建一個VBox和一個標籤,並在構造函數方法中使用傳遞的座標(X,Y)來設置它自己的佈局座標。然後我使用自定義實用程序類來使節點可拖動。這個新節點然後被添加到主應用程序窗格。

但是,我沒有找到如何讓這些節點可以由用戶調整大小。也就是說,允許用戶將鼠標懸停在節點的角落,按住並拖動來調整大小。無論操作系統如何,所有用戶都可以使用該操作。

有沒有人在JavaFX中做過這樣的事情? (我關於這個問題的搜索似乎只是拉起科目的自動調整大小,一個父節點確實有其子節點。)

非常感謝,

伊恩。

回答

0

正如你可以上看到的documentation of VBox只能定義最小,首選和最大範圍,有沒有一個真正的方法,使手動調整大小

解決您的問題的唯一正確的解決方案是開發自己的類來做到這一點,因爲你想要的東西似乎非常具體,與你的問題描述,我不認爲使用一些佈局或面板會做你準確的想。

我發現的東西,你可以用:Dragging to resize a JavaFX Region

這允許您調整的區域,所有你需要做的後,就是把你的VBox在這一地區,但注意在這篇文章中說:

目前僅實現高度調整大小。

此代碼不會JavaFX8工作,你必須檢查的意見,看看它在JavaFX8

希望這有助於如何worls。