簡體   English   中英

JavaFX如何從Tableview獲取選定行的數據

[英]JavaFX How to get data of selected row from Tableview

我想從一個選定的行中獲取數據

我有這個小代碼

Stlpce aktualne = (Stlpce) tableview_objednavka.getSelectionModel().getSelectedItems();
    double aktcena = aktualne.getCena();

但是,當我運行該應用程序時,出現此錯誤

Caused by: java.lang.ClassCastException: javafx.scene.control.TableView$TableViewArrayListSelectionModel$5 cannot be cast to sample.Stlpce

我使用場景生成器創建TableView。

你能幫助我嗎?

解決了-問題是,我有getSelectedItems(); 而不是getSelectedItem();

如果只關心選擇了哪一行,那么假設您擁有TableView,則可以簡單地使用:

選定列表= selectionModel.getSelectedItems();

或者如果您的表僅允許單行選擇:

SomeObject selected = selectionModel.getSelectedItem();

System.out.println(selected.getName());

嘗試100%工作...

或嘗試此操作以更好地了解如何從TableView中獲取行數據

異常含義明確: http : //docs.oracle.com/javase/7/docs/api/java/lang/ClassCastException.html

您進行的方法調用( https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/TableView.TableViewSelectionModel.html#getSelectedItems-- )返回對

ObvservableList<T>

Stlpe未實現/擴展的對象,因此Stlpe引用無法指向此類對象。

Stlpe類是ObservableList的Type類嗎? 如果是這樣,也許您需要在列表中找到Stlpe對象:

if (returnedList.size() > 0) {
    Stlpe item = returnedList.get(0);
}

在您的聲明中TableView應該被鑄造到對象例如: TableView <Stlpce> tableview_objednavka;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM