如何在公共tableview

时间:2017-09-07 06:10:42

标签: javafx treetable

what i want to implement

当我点击"存货"以外的小图标时,将折叠以下行(10,11,12,13)。 首先,我想设置CellProperty,设置"存货"作为TreeTableItem,但我失败了。

然后我转向另一种方式。只需在"存货"旁边添加一个图标,然后添加MouseClickedListener,然后添加以下行,但我只能在表的末尾添加行。我不知道如何在第9行下方添加。

   property_item.setCellFactory(new Callback<TableColumn<BalanceSheetItemVo,String>, TableCell<BalanceSheetItemVo,String>>() {
       @Override
       public TableCell<BalanceSheetItemVo,String> call(TableColumn<BalanceSheetItemVo,String> param) {
           return new TextFieldTableCell<BalanceSheetItemVo,String>(){
               public void updateItem(String string,boolean isEmpty){
                   super.updateItem(string,isEmpty);
                   if(!isEmpty){
                       BalanceSheetItemVo v=getTableView().getItems().get(getTableRow().getIndex());

                       if(v.getLine_No()==0||v.getLine_No()==30){
                           setStyle("-fx-font-size: 19;-fx-font-weight: bold;-fx-text-alignment: left");
                       }
                       if(v.getLine_No()==9){
                           setStyle("-fx-background-image: url('images/down.png');-fx-background-position: left;-fx-background-repeat: no-repeat;-fx-background-size: 28 28;");
                           setOnMouseClicked(new EventHandler<javafx.scene.input.MouseEvent>() {
                               @Override
                               public void handle(javafx.scene.input.MouseEvent event) {
                                   getTableView().getItems().add(new BalanceSheetItemVo("  其中:原材料",10,0,0,"公式:\n原材料"));
                               }
                           });

                       }

                   }
               }
           };
       }
   });

0 个答案:

没有答案