javafx tableview鼠標(biāo)觸發(fā)更新屬性詳解
本文實(shí)例為大家分享了javafx tableview鼠標(biāo)觸發(fā)更新屬性,供大家參考,具體內(nèi)容如下
public class HoverCell extends TableCell<Person, String> { public HoverCell(StringProperty hoverProperty) { setOnMouseEntered(e -> hoverProperty.set(getItem())); setOnMouseExited(e -> hoverProperty.set(null)); } @Override protected void updateItem(String item, boolean empty) { super.updateItem(item, empty); setText(empty ? null : item); } }
記錄一下鼠標(biāo)滑動(dòng)觸發(fā)表格更新內(nèi)容,后續(xù)繼續(xù)添加tableview的其他內(nèi)容
firstNameCol.setCellFactory(TextFieldTableCell.forTableColumn()); firstNameCol.setOnEditCommit(event -> { String[] row = event.getRowValue(); row[index] = event.getNewValue(); });
記錄一下,如何讓tablecell可以編輯的同時(shí),再可以獲取其他列的值
public void editTable(){ nameColumn.setCellFactory(TextFieldTableCell.forTableColumn()); qtyColumn.setCellFactory(TextFieldTableCell.forTableColumn(new IntegerStringConverter())); expColumn.setCellFactory(TextFieldTableCell.forTableColumn()); mrpColumn.setCellFactory(TextFieldTableCell.forTableColumn(new DoubleStringConverter())); amtColumn.setCellFactory(TextFieldTableCell.forTableColumn(new DoubleStringConverter())); final int[] ad = {0}; nameColumn.setOnEditCommit(new EventHandler<TableColumn.CellEditEvent<TableData, String>>() { @Override public void handle(TableColumn.CellEditEvent<TableData, String> event) { ((TableData)event.getTableView().getItems().get(event.getTablePosition().getRow())).setName(event.getNewValue()); //TablePosition tp = tableView.getFocusModel().getFocusedCell(); } }); qtyColumn.setOnEditCommit(new EventHandler<TableColumn.CellEditEvent<TableData, Integer>>() { @Override public void handle(TableColumn.CellEditEvent<TableData, Integer> event) { ((TableData)event.getTableView().getItems().get(event.getTablePosition().getRow())).setQty(event.getNewValue()); ad[0] = event.getTableView().getItems().get(event.getTablePosition().getRow()).getQty(); dynCal(); } }); expColumn.setOnEditCommit(new EventHandler<TableColumn.CellEditEvent<TableData, String>>() { @Override public void handle(TableColumn.CellEditEvent<TableData, String> event) { ((TableData)event.getTableView().getItems().get(event.getTablePosition().getRow())).setExp(event.getNewValue()); } }); mrpColumn.setOnEditCommit(new EventHandler<TableColumn.CellEditEvent<TableData, Double>>() { @Override public void handle(TableColumn.CellEditEvent<TableData, Double> event) { event.getTableView().getItems().get(event.getTablePosition().getRow()).setMrp(event.getNewValue()); } }); }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java數(shù)據(jù)脫敏實(shí)現(xiàn)的方法總結(jié)
數(shù)據(jù)脫敏,指的是對(duì)某些敏感信息通過(guò)脫敏規(guī)則進(jìn)行數(shù)據(jù)的變形,實(shí)現(xiàn)敏感隱私數(shù)據(jù)的可靠保護(hù),本文主要是對(duì)后端數(shù)據(jù)脫敏實(shí)現(xiàn)的簡(jiǎn)單總結(jié),希望對(duì)大家有所幫助2023-07-07java門禁系統(tǒng)面向?qū)ο蟪绦蛟O(shè)計(jì)
這篇文章主要為大家詳細(xì)介紹了java門禁系統(tǒng)面向?qū)ο蟪绦蛟O(shè)計(jì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01Java動(dòng)態(tài)代理實(shí)現(xiàn)_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
動(dòng)態(tài)代理作為代理模式的一種擴(kuò)展形式,廣泛應(yīng)用于框架(尤其是基于AOP的框架)的設(shè)計(jì)與開(kāi)發(fā),本文將通過(guò)實(shí)例來(lái)講解Java動(dòng)態(tài)代理的實(shí)現(xiàn)過(guò)程2017-08-08SpringBoot根據(jù)各地區(qū)時(shí)間設(shè)置接口有效時(shí)間的實(shí)現(xiàn)方式
這篇文章給大家介紹了SpringBoot根據(jù)各地區(qū)時(shí)間設(shè)置接口有效時(shí)間的實(shí)現(xiàn)方式,文中通過(guò)代碼示例給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-01-01