Mein Ziel ist es, zu erkennen, wenn ein Benutzer auf eine Zelle im TableView
doppelklickt und die Informationen aus dieser Zelle verwendet. Von meinem Bild kann man sehen, dass ich einen Tisch mit Bier, Brauereien und Stil haben werde.So fügen Sie ein click -Ereignis zu einer Tableview-Zelle in javafx hinzu
Mit einem Doppelklick auf eine Zelle möchte ich dem Benutzer ein Bild (des Bieres, einer Brauerei) mit einigen Infos zeigen. Ich benutze auch den Szenengenerator, also habe ich es mit Controller-Klassen zu tun. Soweit habe ich das aber kein Glück. Keine Fehler, zieht einfach nicht die Info, wenn ich einen grundlegenden Test versuche.
FYI: Ich möchte den Klick auf eine Zelle erkennen, und NUR ziehen Informationen aus der Zelle geklickt - nicht die gesamte Zeile.
Hier ist mein Code für das Ereignis.
public void clickItem(MouseEvent event) {
tableID.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
System.out.println("Clicked on " + (tableID.getSelectionModel().getSelectedCells().get(0)).getColumn());
}
});
}
Meinen Sie, dass Sie die 'println' sehen beim Klicken? Ihre Methode sieht ein bisschen seltsam aus. Könnten Sie das Codefragment auch dort posten, wo es heißt? Und was ist 'tableID'? Es sieht ein bisschen so aus, als wenn Sie auf einen Eintrag klicken, bei dem Sie den Ereignishandler registrieren. – hotzst
Ja, einmal geklickt, sehe ich nicht die Println. Ich habe den Code angepasst aber immer noch kein Glück. Das ist einfach nur die Klick-Funktion zu testen, da ich eine Datenbank verwende, sobald es zwei Klicks erkennt, werde ich Informationen aus der Datenbank in die Java-App ziehen und sie in einem Textbereich anzeigen. – Jonathan