2016-02-25 70 views
1

我已經在java中完成了這項工作,我總結了價格列/行的值。但我想知道如何在javaFX中做到這一點。在javafx中彙總specfic tableview列/行

我想在第1列求和的一切,在inputfield顯示它,我用這個做Java編寫,但如何你在JavaFX

tableview.getValueAt(1,1)的ToString(這樣做);

這是我想要做的。

int sum = 0; 

     for (int i = 0; i<tableview.getItems().size(); i++){ 
      sum = sum + Integer.parseInt(tableview.getValueAt(i,1).toString()); 

     } 
     sumTextField.setText(String.valueOf(sum)); 
+1

你在表格的每一行顯示什麼樣的對象?第1列顯示哪些財產? –

+0

我只想顯示有價格的列1,所以行包含int值 – CookieMonster

+0

這不是足夠的信息。也許你可以爲你的表顯示一些模型類的代碼,以及這些列是如何設置的? –

回答

0

如果你真的有一個TableView<Integer>,這似乎是你說的意見是什麼,你可以做

TableView<Integer> table = ... ; 

int total = 0 ; 
for (Integer value : table.getItems()) { 
    total = total + value; 
} 

,或者使用Java 8做法:

int total = table.getItems().stream().summingInt(Integer::intValue); 

如果您爲表格設置了更爲標準的實際模型類,那麼您需要迭代項目列表並在每個項目上調用相應的get方法,然後添加resu總數。例如。像

TableView<Item> table = ...; 

int total = 0 ; 
for (Item item : table.getItems()) { 
    total = total + item.getPrice(); 
} 
在Java中

,或者8再次風格

int total = table.getItems().stream().summingInt(Item::getPrice); 

這兩種假設你有一個Item類與getPrice()方法,並在問題列顯示的是每個項目的price財產。

+0

謝謝,它工作:) – CookieMonster