本章采用纯kotlin编写UI,后续考虑使用FXML写UI
action (翻译:行动)
menubar(翻译:菜单栏)
primaryStage(翻译:初级阶段)
dialog(翻译:对话)
![](https://img.haomeiwen.com/i13067320/75c787300068632d.png)
package com.example.demo.view
import tornadofx.*
class MainView : View("菜单") {
override val root = vbox{
primaryStage.width=500.0
primaryStage.height=300.0
//窗口大小
menubar {
menu("文件") {
menu("新建") {
item("子选项").action {
dialog("对话框"){
text("恭喜成功")
}
}
item("子选项2")
}
item("保存")
item("关闭")
}
menu("编辑") {
item("复制")
item("粘贴")
}
}
button("点击").action {
dialog("对话框"){
text("恭喜成功")
}
}
}
}
![](https://img.haomeiwen.com/i13067320/e3843980fb9900ea.png)
![](https://img.haomeiwen.com/i13067320/bdff9ee7daf45ccd.png)
![](https://img.haomeiwen.com/i13067320/8f4fa8d114f0471f.png)
![](https://img.haomeiwen.com/i13067320/79bd6fa148ed3b56.png)
![](https://img.haomeiwen.com/i13067320/29370bb61fefbe2e.png)
快捷键
![](https://img.haomeiwen.com/i13067320/b65c2d036a84856a.png)
package com.example.demo.view
import tornadofx.*
class MainView : View("菜单") {
override val root = vbox{
primaryStage.width=500.0
primaryStage.height=300.0
//窗口大小
menubar {
menu("文件") {
menu("新建") {
item("子选项","ctrl+A").action {
dialog("对话框"){
text("恭喜成功")
}
}
item("子选项2")
}
item("保存")
item("关闭")
}
menu("编辑") {
item("复制")
item("粘贴")
}
}
button("点击").action {
dialog("对话框"){
text("恭喜成功")
}
}
}
}
![](https://img.haomeiwen.com/i13067320/22dd2090a52b88e7.png)
同时按住电脑键盘"ctrl+A"两个按键,触发点击事件
![](https://img.haomeiwen.com/i13067320/c87434e5538518c6.png)
网友评论