Я использую JavaFX, и я пытаюсь поместить узел в центр панели, выполнив математику специально.Java/JavaFX: принимать любые типы и возвращать
Я создал такую функцию:
int toCenterX(Label label){
return (int) ((width-label.getWidth())/2);
}
«ширина» переменная я уже объявлена.
Тогда центрирования его следующим образом:
sampleLabel.setLayoutX(toCenterX(sampleLabel));
Эта функция работает нормально, но я хочу, что функция принимает не только этикетки, но и другие классы JavaFX.
Как взять любые типы класса (узла) и использовать специальные методы, которые имеет этот класс?
Поскольку вы выборки ширину, которая наследуется от региона. Вы можете использовать 'int toCenterX (Region region)'. Я лично хотел бы, чтобы вы использовали 'int toCenterX (Control control)'. – ItachiUchiha
Спасибо вам большое! – Rin
Я скорее предлагаю вам использовать Node вместо Control и вернуть double с помощью getBoundsInLocal(), getBoundsInParent или getLayoutBounds() в зависимости от ваших требований. – Roland