繁体   English   中英

javafx TableView; 编辑新添加的元素

[英]javafx TableView; edit newly added element

我正在尝试自动启动对TableView上新添加的元素的编辑。 例如

((TableView)t).getItems().add(new Data(...));
t.edit(t.getItems().size() - 1, tColumn);

尽管这为分隔的单元格提供了不确定的行为(例如,看起来(处于可视状态)处于编辑状态,而实际上却不是)

据我了解,添加元素后,表本身尚未更新(因此),因此添加runLater调用有时可以解决此问题。 虽然不一致。

Platform.runLater(() -> t.edit(t.getItems().size() - 1, tColumn));

至少这消除了未定义的视觉行为。 它要么是编辑的,要么不是(技术上和视觉上)。

因此,我正在寻找添加元素后触发编辑的一致方式。

我偶然发现了解决该问题的方法...。 如果在启动编辑之前调用TableView#layout() ,则将正确更新单元格,从而提供防故障结果。

((TableView)t).getItems().add(new Data(...));
t.layout();
t.edit(t.getItems().size() - 1, tColumn);

请注意,不需要Platform#runLater()调用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM