能用kotlin表达吗?
时间: 2023-07-17 14:55:56 浏览: 59
当然可以!下面是一个使用 Kotlin 表达的示例代码:
```kotlin
import javafx.application.Application
import javafx.scene.Scene
import javafx.scene.control.ContextMenu
import javafx.scene.control.MenuItem
import javafx.scene.layout.StackPane
import javafx.stage.Stage
class PopupMenuExample : Application() {
override fun start(primaryStage: Stage) {
val root = StackPane()
// 创建一个菜单
val menu = ContextMenu()
menu.items.add(MenuItem("Item 1"))
menu.items.add(MenuItem("Item 2"))
menu.items.add(MenuItem("Item 3"))
// 绑定鼠标右键事件,显示菜单
root.setOnContextMenuRequested { event ->
menu.show(root, event.screenX, event.screenY)
}
val scene = Scene(root, 300.0, 200.0)
primaryStage.title = "Popup Menu Example"
primaryStage.scene = scene
primaryStage.show()
}
}
fun main() {
Application.launch(PopupMenuExample::class.java)
}
```
在上面的示例中,我们使用 JavaFX 创建了一个带有右键菜单的窗口。菜单的显示位置由鼠标事件的坐标决定。你可以根据需要修改 `setOnContextMenuRequested` 中的 `event.screenX` 和 `event.screenY` 参数来调整菜单的位置。
希望能够帮助到你!如果还有其他问题,请继续提问。