2017-02-16 6 views
0

Я использую JavaFX2.0 для своего java-приложения, затем я использую файл .fxml для создания моего пользовательского интерфейса, затем я использую css для оформления кнопки или метки.JavaFX2.0 fx-pref-width не работает

Так же, как:

/* JavaFX CSS - Leave this comment until you have at least create one rule which uses -fx-Property */ 

.lebel{ 
     -fx-alignment: center ; 
     -fx-pref-width:20% ; 
     -fx-pref-height: 180 ; 
     -fx-background-color: transparent ; 
     -fx-text-fill: white ; 
     -fx-background-size: stretch; 
     -fx-padding: 0 0; 
     -fx-font-size: 20sp; 
    } 

Пять этикетки размещены горизонтально, но свойство -fx-pref-width:20% не работает на пользовательском интерфейсе. Я пытаюсь использовать -fx-pref-width:% для разработки пользовательского интерфейса для разных размеров сцены.

+0

После компиляции он никогда не добирается до размера, который мы даем! Когда ваш код будет преобразован в файл jar, и когда вы его выполните, вы увидите свою определенную длину и высоту окна! Такая же проблема здесь – minigeek

ответ

0

-fx-pref-width определяется по Region. См. this.

Это абстрактный от него:

недвижимости: -fx-мин-ширина, -fx-прив ширины, -fx-макс ширина

значения: < число>

По умолчанию: -1

Комментарии: Процентные значения не полезны, поскольку фактическое значение будет вычисляться по ширине и/или высоте родительского элемента Region до того, как родитель будет выложен.

Таким образом, проценты не поддерживаются. Возможно, вам нужно будет сделать это, используя код.

+0

у нее есть свойство «вес», как android? – Lawas

+0

@Lawas Не то, чтобы я знал. Вы можете обернуть их в «Панель» с такой функцией, как «GridPane», которая может указывать проценты по столбцам/строкам. «TilePane» также может быть тем, что вам нужно, и это приведет к тому, что все дети будут иметь одинаковый размер. – Jai