2013-06-26 2 views
2

У меня возникла следующая проблема с использованием JavaFX.Настройка JavaFX Tooltip

Переопределение стиля всплывающей подсказки с использованием таблицы стилей работает в Java Scene Builder.

переопределение стиля подсказки при исполнении в затмении с теми же таблицей стилей, включенных в FXML файл, созданном из сцены строитель с

<stylesheets> 
    <URL value="@../style/myCSS.css" /> 
</stylesheets> 

делает не работы (любое другое переопределение свойства работает).

переопределение стиля подсказки при исполнении в упадке с такими же таблицами стилей с использованием инструкцией коды:

scene.getStylesheets().add(this.getClass().getResource("/style/myCSS.css").toExternalForm()); 

работает должным образом.

стилевых используется (myCSS.css): файл

.tooltip { 
    -fx-background-radius: 2 2 2 2; 
    -fx-background-color: linear-gradient(#FFFFFF, #DEDEDE); 
} 

.page-corner { 
    -fx-shape: " "; 
} 

AnchorPane { 
    -fx-background-color: firebrick; 
} 

FXML используется:

<AnchorPane id="AnchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="91.0" prefWidth="200.0" xmlns:fx="http://javafx.com/fxml"> 
    <children> 
    <Button layoutX="72.0" layoutY="35.0" maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" mnemonicParsing="false" text="Button"> 
     <tooltip> 
     <Tooltip text="Tootip Text" /> 
     </tooltip> 
    </Button> 
    </children> 
    <stylesheets> 
    <URL value="@../style/myCSS.css" /> 
    </stylesheets> 
</AnchorPane> 

Edit: Другими словами я хочу быть Абэ, чтобы объявить свою таблицу стилей в файле FXML. Похоже, что это работает для любого переопределения свойств (в этом случае цвет фона AnchorPane), кроме подсказок.

+0

В чем проблема? Ваш вопрос неясен, несмотря на весь код, который вы дали. – JEY

ответ

4

Свойства CSS, которые вы пытаетесь установить для Tooltip, относятся только к классам JavaFX, которые расширяют класс Region. Tooltip является дочерним по классу PopupControl и, как таковой, имеет более ограниченную библиотеку свойств CSS. Here's a link to a list of available CSS properties for Tooltip. Этот сайт является вашей лучшей ссылкой на свойства CSS JavaFX.

+0

Спасибо за ответ, я отправился в css (в jdk), который определяет свойства по умолчанию всплывающей подсказки (caspian.css), и я вижу, что они установили эти свойства (даже видели пример [здесь] (http://blog.ngopal.com.np/2012/03/07/css-tooltip-skinning/)). В любом случае, на самом деле это не объясняет, почему это работает в Java Scene Builder и с помощью команды getStylesheets(). Add (...). – Mouz

+0

Интересно. Я тоже это вижу. Мне любопытно, почему они остались вне ссылки на ресурс CSS. Вы посмотрели на [это] (http://stackoverflow.com/questions/14696884/setting-stylesheets-declaratively-in-fxml/14697419#14697419) ответ на аналогичный вопрос? У вас есть таблица стилей, связанная напрямую с помощью импорта ? – OttPrime

+0

Кажется, что этот импорт полезен только для Scene Builder. Я пробовал это в любом случае, но он все еще не работает. Я разместил вопрос на доске JIRA, я посмотрю, что из этого получилось. – Mouz

Смежные вопросы