java - 在 JavaFX 网格中粘贴数据后如何触发单元格事件?
问题描述
我根据此处给出的解决方案在控制器类中定义了一个粘贴方法:如何在 TableView 中复制/粘贴表格单元格。一切都很顺利,除了一个细节:一些粘贴数据的单元格有应该触发但没有触发的事件。
例如:
public class MyController {
private TableColumn<MyBean, String> valueColumn;
...
valueColumn.setOnEditCommit(e -> doSomeStuff(e));
private void doSomeStuff(CellEditEvent<MyBean, String> event) {
...
}
在此示例中,用户按 ENTER 后,将调用 doSomeStuff 方法,这是预期的行为。
我实现的粘贴方法的问题是它不会影响单元格,只会影响其内容(其 ObservableValue)。这当然意味着粘贴数据后,不会触发任何事件。
我的问题:有没有办法触发相同的事件,或者在粘贴数据后调用我的 doSomeStuff 方法的类似事件?
解决方案
表视图不像你想象的那样工作。如果您想拥有完全可定制的结构,请使用网格窗格。很难创建一个,但是在使它看起来像一张桌子之后,您可以自定义更多选项。我在最近的一个项目中做到了这一点,我需要在单元格中插入一个表格。使用网格窗格和文本字段要容易得多。
推荐阅读
- css - Bootstrap Accordian - 在图标之后
- ms-access - MS-ACCESS 查找超过 3 年的数据
- python - Pandas 数据框 .dropna() 没有丢弃 NaN 值
- vue.js - 从子组件调用方法
- javascript - array.push 似乎替换了以前的对象而不是追加
- javascript - 使用过滤器功能从另一个对象创建对象
- angular - 如何防止 Angular 服务人员缓存 PDF 文件?
- php - Wordpress Index.php 博客文章
- java - jaxb2-maven-plugin:无法从 WSDL 生成源
- node.js - 第一个alexa技能