JavaFX Цвет фона меню обновляется автоматически - PullRequest
0 голосов
/ 24 декабря 2018

Я хочу обновить цвет моего menuButton / Menu / MenuItem автоматически, когда процесс запускается или нет.

Но цвет моего фона не обновляется.

Я связываю стильСвойство, я не знаю, если это хороший способ.

Я не использую CSS и не хочу его, но я тоже попробовал с классом CSS с getStyleClass (). clear (), затем добавьтемой класс.

Если вы знаете способ установить цвет фона, например, myMenuItem.setBackGroundColor (Color myColor);и это автоматически обновляется, это хорошая точка для вас :).

Спасибо.

view.java

@FXML
private MenuItem itmProcess;

@FXML
public void initialize() {

    JavaFxObservable.valuesOf(viewModel.itmProcessStyleProperty()) //
            .distinctUntilChanged() //
            .observeOn(JavaFxScheduler.platform()) //
            .subscribe(itmProcess.styleProperty()::set);

    // itmProcess.styleProperty().bind(viewModel.itmProcessStyleProperty()); tried too
}

viewModel.java

private final SimpleStringProperty itmProcessStyle = new SimpleStringProperty();

@Inject
private CheckStatusService checkStatusService;

@FXML
public void initialize() {

    startCom();
    itmProcessStyle.bind(checkStatusService.processStyleProperty());

    // processStyleProperty return "-fx-background-color: red;" or "-fx-background-color: lime;"
    // I'll check it with a thread and sysout
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...