我正在尝试为我的图形用户界面使用 scala.swing 包。在那之前,我使用的是普通的 GroupLayout(手动编写 :),但 scala 方式似乎更好。虽然我遇到了一些问题 - 我喜欢 BoxLayout,但是当我尝试向其中添加多个 Pane 并尝试指定不同的水平对齐方式时,我遇到了一些奇怪的事情。
代码如下:
new Frame {
contents = new BoxPanel(Orientation.Vertical) {
contents += new Button("A") {
xLayoutAlignment = 1.0f
}
contents += new Button("B")
size = (200, 200)
}
size = (200, 200)
visible = true
peer.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE)
}
至少,我希望在按钮 A
的左侧看到按钮 B
。这是我看到的:
此代码的 Java 版本完全相同,因此它不是 scala.swing 错误。
我做错了什么?
最佳答案
and try to specify different horisontal alignments, I get something strange.
这就是 BoxLayout 设计的工作方式。
参见 Fixing Alignment Problems以获得更好的解释和简单的演示,让您可以尝试对齐以更好地理解它们的工作原理。
关于java - 盒子布局问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7778240/