Когда я запускаю следующее, я заметил расстояние между узлами; Мои исследования показали, что - 1) Если я не добавляю текст в win1 через setwininfo, то проблем нет. 2) Когда я включаю этот код в более крупное приложение, и когда щелчок кнопки появляется откуда-то еще, загадочным образом корректируется интервал. 3) Я попытался привязать узлы win1 и win2 к содержимому сцены, но безуспешно.
def mainframew : Целое число = 250; def mainframeh : Целое число = 500;
класс CtrlWindow расширяет CustomNode {
var wininfo : String;
var fsize : Integer;
var width : Integer;
public function setWinInfo(info : String) {
wininfo = info;
}
override protected function create () : Node {
var win = Group {
content: [
VBox {
content: [
Text {
font : Font {
size: fsize
}
content : bind wininfo
textAlignment : TextAlignment.CENTER // did not work
}
]
}
Rectangle {
width: width, height: 25
fill: Color.TRANSPARENT
strokeWidth : 2
stroke : Color.SILVER
}
]
}
return win;
}
}
запуск публичной функции (аргументы: строка []) {
var win1 = CtrlWindow{fsize:14, width:mainframew}; var win2 = CtrlWindow{fsize:14, width:mainframew};
win1.setWinInfo("Расстояние между этими узлами"); win2.setWinInfo("исправляет себя после получения события");
Стадия {
title : "MyApp"
scene: Scene {
width: mainframew
height: mainframeh
content: [
VBox {
spacing: 0
content: [
HBox {
content: win1
}
HBox {
content: win2
}
]
}
]
}
}