Javafx - стиль ячеек при использовании gridview - PullRequest
0 голосов
/ 26 апреля 2020

Я использую GridView из Controlsfx и не могу изменить стиль, если выбрана ячейка. Конкретный выбор никогда не показывается. Эффект наведения отображается, но я не могу заставить его работать, так как цвет фона изменяется, если выбран элемент в виде сетки / щелкнули по нему.

Что я пробовал в CSS:

.grid-view .image-grid-cell:selected {
-fx-background-color:white;
-fx-border-style: solid;
-fx-border-width: 3 3 3 3; /* its make really one-pixel-border */
-fx-border-color: white;

}

/**

* * @author selfemp * / publi c Класс MediaGridCell extends GridCell {

private final MediaFile mediaFile;

public MediaGridCell() {
    this.setId("MediaGridCell");
    setStyle("#MediaGridCell");
    mediaFile = new MediaFile();
}

@Override
protected void updateItem(MediaFile item, boolean empty) {
    // TODO Auto-generated method stub
    super.updateItem(item, empty);
    if (empty || item == null) {
        setText(null);
        setGraphic(null);
    } else {
        mediaFile.setImage(item.getImage());
        setGraphic(mediaFile);
        //setText(item.getName().toString());
        //setStyle("#MediaGridCell");
    }
}

@Override
public void updateSelected(boolean bln) {
    System.out.println("selected changed");
    super.updateSelected(bln);        
    if (bln == true) {
        System.out.println("changed background");
        setStyle("-fx-background-color:white;");
    }
}

}

...