我正在学习如何使用 Scala 上的标准 Swing 小部件构建 GUI。这就是我想做的:

我成功地创建了组件,但未能对齐它。我的所有组件都居中对齐,不像我想要的那样(Button1 在左侧,table 在中心,button2 在右侧)。我也找不到太多关于 Scala 的 Swing 的信息。大多数搜索结果都是关于Java的(我对此一无所知)。我应该做什么来强制对齐?
这是代码:
ontents += new BoxPanel(Orientation.Vertical) {
contents += new Button("Button 1")
contents += new Table(3, 3)
contents += new Button("Button 2")
}
Run Code Online (Sandbox Code Playgroud)
结果:

先谢谢了。
我通常使用自己的布局助手(VBox 和 HBox),这使得大多数事情变得非常简单。但以下代码仅使用标准库即可实现您想要的效果(我还冒昧地在组件之间添加了一些边框和间距):
import swing._
import Swing._
import java.awt.Color
new MainFrame {
val button1 = new Button("Button 1")
val button2 = new Button("Button 2")
val table = new Table(4,3) {
border = LineBorder(Color.BLACK)
}
contents = new BoxPanel(Orientation.Vertical) {
border = EmptyBorder(10)
contents += new BorderPanel {
add(button1, BorderPanel.Position.West)
}
contents += VStrut(10)
contents += table
contents += VStrut(10)
contents += new BorderPanel {
add(button2, BorderPanel.Position.East)
}
}
visible = true
}
Run Code Online (Sandbox Code Playgroud)
(您可以将上面的内容粘贴到文件中并运行scala file.scala,它就会工作)
| 归档时间: |
|
| 查看次数: |
2466 次 |
| 最近记录: |