Использование JavaFX в изображениях jar в css

Я пытаюсь добавить фоновое изображение на какую-либо панель в моем приложении javafx, изображение находится внутри пакета resources.img, а css находится внутри пакета resources.css

если я устанавливаю фоновое изображение программно, как это предлагается в этой теме: Настройка фонового изображения по коду javafx (не css)

он отлично работает, но я хотел бы знать, могу ли я установить фоновое изображение из самого файла css.

Я пытался

-fx-background-image: url("@../img/myImage.png");

но тогда интерпретатор css не нашел файл изображения. можно ли делать то, что я хочу через css?


person bennyl    schedule 11.05.2012    source источник


Ответы (2)


Парсер JavaFX CSS имеет ограничение, например

Операторы @-keyword игнорируются.

описано в разделе «Ограничения» Справочного руководства по CSS. Это может быть причиной вашей проблемы, хотя сам не подтвердил. Можете попробовать так: -fx-background-image: url("../img/myImage.png");
или -fx-background-image: url("resources/img/myImage.png");.

person Uluk Biy    schedule 11.05.2012
comment
-fx-фоновое изображение: URL-адрес (../img/myImage.png); сделал трюк! Спасибо! - person bennyl; 11.05.2012

Возможно, кому-то это будет полезно. Если вы указали: -fx-background-image: url("resources/img/myImage.png");. Вполне возможно, что автономный файл .jar успешно загрузит образ, а IDE (например, Eclipse) — нет. Это потому, что IDE изменяет путь и будет искать что-то вроде: C:/My_project/resources/css/resources/img/myImage.png. Это означает, что root по указанному пути будет папка с файлом css вместо .jar пакета

person Lurking Elk    schedule 16.08.2016