Hallo,
ich brauche noch einmal Eure Hilfe. Ich hab das Internet durchsucht und auch etwas dazu gefunden, nur weiß ich nicht, wie ich das in meinem Programm umgesetzt bekomme. Ich habe eine Spalte in einer JavaFX Table View, die einen Boolean als Bild anzeigt, welcher aus einer Datenbank gelesen wird. Jetzt hätte ich gerne, dass der Benutzer mit einem Doppelklick auf eine Zelle die Frage gestellt bekommt, ob er den Wert ändern möchte. Es reicht auch erstmal wenn auf der Konsole "double clicked" oder sowas erscheint. Ab da dürfte ich dann weiter kommen. Meine Cell Factory sieht so aus:
Ich weiß jetzt nicht, ob ich ein MouseListener in diese CellFactory einbauen soll oder ob ich eine neue anlegen soll. Ihr merkt, ich bin ein bisschen ratlos. Die Seiten habe ich mir grade schon angeschaut:
https://stackoverflow.com/questions...-a-tableview-cell-in-javafx?noredirect=1&lq=1
https://stackoverflow.com/questions/26563390/detect-doubleclick-on-row-of-tableview-javafx
Ich will wirklich nur diese eine Spalte überprüfen und nicht die komplette Zeile, da ich in anderen Spalten auch weitere Booleans habe, die ebenfalls mit dieser Methode verändert werden sollen. Ich hoffe, dass das verständlich ist
ich brauche noch einmal Eure Hilfe. Ich hab das Internet durchsucht und auch etwas dazu gefunden, nur weiß ich nicht, wie ich das in meinem Programm umgesetzt bekomme. Ich habe eine Spalte in einer JavaFX Table View, die einen Boolean als Bild anzeigt, welcher aus einer Datenbank gelesen wird. Jetzt hätte ich gerne, dass der Benutzer mit einem Doppelklick auf eine Zelle die Frage gestellt bekommt, ob er den Wert ändern möchte. Es reicht auch erstmal wenn auf der Konsole "double clicked" oder sowas erscheint. Ab da dürfte ich dann weiter kommen. Meine Cell Factory sieht so aus:
Java:
remoteColumn.setCellFactory(col -> new TableCell<Data, Boolean>()
{
private final ImageView imageView = new ImageView();
{
// initialize ImageView + set as graphic
imageView.setFitWidth(20);
imageView.setFitHeight(20);
setGraphic(imageView);
}
@Override
protected void updateItem(Boolean item, boolean empty)
{
if (empty || item == null)
{
// no image for empty cells
imageView.setImage(null);
}
else
{
// set image for non-empty cell
imageView.setImage(item ? imageTrue : imageFalse);
}
}
@Override
public Bounds sceneToLocal(Bounds sceneBounds)
{
// TODO: Auto-generated method stub
return super.sceneToLocal(sceneBounds);
}
});
https://stackoverflow.com/questions...-a-tableview-cell-in-javafx?noredirect=1&lq=1
https://stackoverflow.com/questions/26563390/detect-doubleclick-on-row-of-tableview-javafx
Ich will wirklich nur diese eine Spalte überprüfen und nicht die komplette Zeile, da ich in anderen Spalten auch weitere Booleans habe, die ebenfalls mit dieser Methode verändert werden sollen. Ich hoffe, dass das verständlich ist