我有以下代码:
import scalafx.application.JFXApp
import scalafx.scene.Scene
import scalafx.scene.layout.HBox
import scalafx.scene.paint.Color._
import scalafx.scene.shape.Rectangle
object Main extends JFXApp {
stage = new JFXApp.PrimaryStage {
title.value = "Hello Stage"
width = 100
height = 100
scene = new Scene {
fill = White
content = new HBox {
children = Seq(
new Rectangle {
x = 10
y = 10
width = 10
height = 10
fill = Green
},
new Rectangle {
x = 20
y = 20
width = 10
height = 10
fill = Red
}
)
}
}
}
}
我希望这会给我两条相邻的对角线上的正方形,边缘有一个间隙,但是它们依旧靠在边缘并且紧挨着彼此。
我做了很多谷歌搜索并阅读了很多scalaFX文档,并且无法理解我做错了什么。我希望我一直在寻找错误的地方! 我不知道javaFX(也不是Java),所以查看JavaFX文档对我来说更难以理解:(
答案 0 :(得分:3)
由于您将Rectangles
添加到HBox
x,因此HBox
将其子项放在一个水平行中,因此不考虑y坐标。
查看https://docs.oracle.com/javase/8/javafx/api/javafx/scene/layout/HBox.html
上的文档尝试使用窗格(对于哪个子布局是非托管的,而是由开发人员指定) https://docs.oracle.com/javase/8/javafx/api/javafx/scene/layout/Pane.html