2013-11-15 4 views
2

Я хотел бы знать, как я могу изменить стиль css StackPane, когда выбрано значение StackPane. Некоторые компоненты имеют атрибут :selected или :pressed в стиле css. Можно ли добавить этот дополнительный атрибут в StackPane?Панели и выбранная опция css

ответ

2

Как я вас понял, вы хотите, чтобы ввести пользовательские PseudoClass. Это возможно с помощью JavaFX 8.

Для управления состоянием вашего псевдокласса используйте соответствующий связывание свойств/прослушиватель событий для вызова Node.pseudoClassStateChanged(PseudoClass, boolean).

+0

Я просто хочу знать, что не так с моим ответом ?? я могу дать неправильный ответ? он спрашивает что-то другое? –

+0

@AnshulParashar: В общем, я думаю, что дело не в правильном или неправильном. На SO вопроситель может принять этот ответ, который наиболее полезен для него. Лично мне нравится, как JavaFX позволяет отделить дизайн от приложения. Это следует более последовательно, назначая классы CSS и псевдоклассы вашим виджетам и перемещая соответствующие определения дизайна в файл css. –

+0

благодарит человека, чтобы прояснить его. Я просто прошу узнать что-то, что лучше, и просто проверить, может быть, мой ответ был неправильным. вот почему прошу ... –

0

попробовать это ...

StackPane stack = new StackPane(); 
    stack.setOnMouseClicked(new EventHandler<MouseEvent> 
    () { 

     @Override 
     public void handle(MouseEvent t) { 
      System.out.println("click on stack"); 
      stack.setStyle("-fx-background-color:pink"); 
     } 
    }); 
Смежные вопросы