如何在tornadoFx中更改鼠标光标图标

时间:2017-09-01 08:19:25

标签: tornadofx

我正在使用一个项目并使用tornadoFx。当我需要更改我的mouser光标图标以指示后台任务正在运行时。 怎么做 ? 如果我做: cursor = Cursor.WAITING 光标没有变化。

1 个答案:

答案 0 :(得分:1)

您需要将光标配置在要更改光标的最外层对象上。在下面的示例中,我确保光标更改为作为View根的stackpane。这意味着当动作运行时,只要鼠标指针位于堆栈窗格内的某个位置,光标就会改变:

class TaskView : View() {
    override val root: StackPane = stackpane {
        setMinSize(400.0, 400.0)
        button("Do work") {
            action {
                parent.cursor = Cursor.WAIT
                runAsync {
                    Thread.sleep(2000)
                } ui {
                    parent.cursor = Cursor.DEFAULT
                }
            }
        }
    }
}