JavaFX TableView Error beim clicken des außenbereiches

XIIZQ

Mitglied
Hallo,

ich habe ein TableView erstellt innerhalb eines BorderPane, nun bekomme ich aber eine fehlermeldung wenn ich außerhalb des bereiches klicke.

Kann mir jemand bei diesem problem behilflich sein?

u2PSj.png


Java:
   private Parent MyTableViewBilder() {
        TableView<Bilder> table = new TableView<>();
//        table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
        table.setEditable(true);
        table.setFocusTraversable(false);

        TableColumn dateiName = new TableColumn("Name");
        dateiName.setPrefWidth(200);
        dateiName.setCellValueFactory(new PropertyValueFactory<>("dateiName"));
        dateiName.setCellFactory(TextFieldTableCell.forTableColumn());
        dateiName.setOnEditCommit(new EventHandler<CellEditEvent<Bilder, String>>() {
            @Override
            public void handle(CellEditEvent<Bilder, String> t) {
                ((Bilder) t.getTableView().getItems().get(
                        t.getTablePosition().getRow())).setName(t.getNewValue());
            }
        });

        TableColumn dateiAbmessung = new TableColumn("Abmessungen");
        dateiAbmessung.setPrefWidth(100);
        dateiAbmessung.setCellValueFactory(new PropertyValueFactory<>("dateiAbmessung"));

        TableColumn dateiDatum = new TableColumn("Datum");
        dateiDatum.setPrefWidth(150);
        dateiDatum.setCellValueFactory(new PropertyValueFactory<>("dateiDatum"));

        TableColumn dateiTyp = new TableColumn("Typ");
        dateiTyp.setPrefWidth(150);
        dateiTyp.setCellValueFactory(new PropertyValueFactory<>("dateiTyp"));

        TableColumn dateiGröße = new TableColumn("Größe");
        dateiGröße.setPrefWidth(150);
        dateiGröße.setCellValueFactory(new PropertyValueFactory<>("dateiGröße"));

        final ObservableList<Bilder> data = observableArrayList(
                new Bilder("bild1", "1024 x 1024", "08.12.2004 24:24", "JPG", 150));

        table.setItems(data);
        table.getColumns().addAll(dateiName, dateiAbmessung, dateiDatum, dateiTyp, dateiGröße);
        table.setPlaceholder(table);
        

        dateiName.setCellValueFactory(
                new PropertyValueFactory<>("name")
        );
        dateiAbmessung.setCellValueFactory(
                new PropertyValueFactory<>("abmessungen")
        );
        dateiDatum.setCellValueFactory(
                new PropertyValueFactory<>("datum")
        );
        dateiTyp.setCellValueFactory(
                new PropertyValueFactory<>("typ")
        );
        dateiGröße.setCellValueFactory(
                new PropertyValueFactory<>("größe")
        );
        
        return table;
    }

Mit freundlichen Grüßen
XIIZQ
 
Was für eine Fehlermeldung? Und: hattest du die Frage nicht schon mal gestellt???
Ich würde vermuten, dass die Zeilen 14 und 15 Hier das Problem sind (NullPointerException), aber ohne Fehlermeldung... Schwer zu sagen.
 
PHP:
Executing C:\Users\User\Documents\NetBeansProjects\MultimediaCenter\dist\run1529774261\MultimediaCenter.jar using platform C:\Program Files\Java\jdk1.8.0\jre/bin/java
Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
	at javafx.scene.control.TableView$TableViewArrayListSelectionModel.handleSelectedCellsListChangeEvent(TableView.java:2657)
	at javafx.scene.control.TableView$TableViewArrayListSelectionModel.clearAndSelect(TableView.java:2180)
	at javafx.scene.control.TableView$TableViewArrayListSelectionModel.clearAndSelect(TableView.java:2140)
	at com.sun.javafx.scene.control.behavior.TableRowBehavior.doSelect(TableRowBehavior.java:196)
	at com.sun.javafx.scene.control.behavior.TableRowBehavior.mousePressed(TableRowBehavior.java:88)
	at com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:95)
	at com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:89)
	at com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218)
	at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80)
	at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
	at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
	at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
	at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54)
	at javafx.event.Event.fireEvent(Event.java:204)
	at javafx.scene.Scene$MouseHandler.process(Scene.java:3746)
	at javafx.scene.Scene$MouseHandler.access$1800(Scene.java:3471)
	at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1695)
	at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2486)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:314)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:243)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:345)
	at com.sun.glass.ui.View.handleMouseEvent(View.java:526)
	at com.sun.glass.ui.View.notifyMouse(View.java:898)
	at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
	at com.sun.glass.ui.win.WinApplication.access$300(WinApplication.java:39)
	at com.sun.glass.ui.win.WinApplication$4$1.run(WinApplication.java:112)
	at java.lang.Thread.run(Thread.java:744)

Nein ich habe diese Frage noch nicht gestellt, zumindestens nicht das ich wüsste 0o
 
Zuletzt bearbeitet:
ja wie es da steht eine Nullpointer exception heist du hast diese zellen nicht definirt bzw es liegt ein fehlerhafter action listener oder änliches vor.
 
In dem Stacktrace ist deine Klasse nicht zu sehen. kA was da schief geht. Ich würde aber dennoch einmal einen Breakpoint auf das OnEditCommit setzen und schauen, was da passiert, denn da es erst beim klick passiert und das die einzige von dir erstellte Logik besitzt, denke ich immer noch, dass hier das Problem liegt.
 
also ich bekomme diesen fehler nur auf meinen home rechner, auf dem laptop ohne probleme 0o
aber ich werde mal gucken wegen dem edit.
danke schonmal für die vorschläge
 

Neue Themen


Zurück
Oben