- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我构建了一个表格查看器,并在其上设置了以下方法:
viewer.setContentProvider(new SampleContentProvider());
viewer.setLabelProvider(new SampleLabelProvider());
viewer.setInput(object);
SampleContentProvider 实现 IStructeredContentProvider
和
SampleLabelProvider 实现 ILabelProvider
对表项执行修改操作后刷新查看器时,出现以下异常:
org.eclipse.core.runtime.AssertionFailedException: null argument:
at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:85)
at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:73)
at org.eclipse.jface.viewers.StructuredViewer.disassociate(StructuredViewer.java:640)
at org.eclipse.jface.viewers.AbstractTableViewer.internalRefreshAll(AbstractTableViewer.java:727)
at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:649)
at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:636)
at org.eclipse.jface.viewers.StructuredViewer$7.run(StructuredViewer.java:1487)
at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1422)
at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1383)
at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1485)
at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:537)
at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1444)
我已经调试了 SampleContentProvider 的 getElements ,它返回一个对象数组...
我不知道为什么查看器上的刷新调用偶尔会导致此异常,因此不会使用修改后的内容更新表格。
最佳答案
失败是由于 TableItem.getData()
返回 null
引起的,这是不允许的。
当您使用TableViewer
来管理表格时,您不能直接操作TableItem
对象,TableViewer
负责这些并更改它们将导致失败。
要对表进行排序,请使用 TableViewer.setComparator
调用来提供一个基于 ViewerComparator
的类,该类对数据模型中的对象进行排序。
关于java - 无法刷新 jface 表查看器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26155691/
我有一个扩展 FormDialog 的自定义 JFace 对话框(称为 PropertyDialog)。我想在 PropertryDialog 打开后立即通过它打开一个模态消息对话框,以向用户显示一条
我在 jface View 中有一个 jface tableviewer 表,用户可以单击 tableviewer 表的任何行,单击时 View 必须导航到另一个 View ,并将选定的行 ID 发送
我正在尝试使用 Wizard 类 (org.eclipse.jface.wizard.Wizard) 生成向导 基本上,我在构造函数中扩展 Wizard 的地方是我 addPage 我想要的两个页面。
我创建了一个 JFace 向导,显示一个用户应该在其中进行选择的列表。由于该页面仅包含一个列表,因此我想启用双击选择。如果用户双击单个事件,向导应跳转到下一页。 到目前为止我得到了以下代码: vie
我想向选择按钮添加一个监听器,该按钮获取在 list 表查看器中选择的多行。然后它会继续检查这些框。我的问题是如何获取在表格查看器中选择的行列表? 这是该表的代码: private void crea
我正在使用一个小型 JFace 首选项存储,我可以在其中直接添加首选项,但是当我想删除已放入的首选项之一时遇到麻烦。 我在 API 中看不到任何允许删除的内容。这样做的正确方法是什么? 最佳答案 假设
我有一个没有columnviewer支持的jface树。它有一个装饰标签提供商,因为我需要装饰树项目。我无法使用 celllableprovider 来执行此操作。我看过诸如http://dev.ec
当用户展开 TreeViewer 中的特定节点时,它应该展开两层而不是一层。所以我添加了以下代码: viewer.addTreeListener(new ITreeViewerListener() {
如图所示,对话框打开时按钮栏有时无法正确显示。我认为由于我必须为 DefaultTableModel 嵌入 awt 框架,因此产生了一些布局问题。 有什么办法可以解决这个问题吗?或者我应该使用 jfa
我创建了一个 JFace 向导,显示一个列表,用户应该在其中进行选择。由于页面只包含一个列表,我想启用双击选择。如果用户双击单个事件,向导应该跳转到下一页。 到目前为止,我得到了以下代码: view
我想向选择按钮添加一个监听器,该按钮获取在 list 表查看器中选择的多行。然后它会继续检查这些框。我的问题是如何获取在表格查看器中选择的行列表? 这是该表的代码: private void crea
我在我的应用程序中使用 JFace 对话框。而且我不会子类化 getInitialSize(xxx)。 JFace 可以正确确定对话框的高度,但宽度。我的问题是 JFace 对话框是否可以自动计算我的
我对 Jface 还很陌生,现在我面临着表中最后一列的问题。看一下下一个屏幕截图: 正如您所看到的,启动应用程序时最后一列变得过大,无论如何我都无法解决这个问题!下面您可以看到查看代码: packag
我目前正在使用 JFace 为数据库插件功能开发 GUI(由于线程问题,无法使用任何其他方法),并且我的任务是使 GUI 看起来尽可能与数据库字段相似。我需要在文本字段内放置一个星号,如下所示: 我尝
我遇到了一个小问题,需要帮助。问题是我希望调用一个调用 html 页面的浏览器窗口。 html 文件在 3 个不同的浏览器中打开,因此其代码应该是正确的。实际问题是,它弹出页面无法显示的错误消息 这是
如何强制列表查看器更新大小?当我向列表中添加一个比现有大小更长的元素时,列表查看器应该展开: 我以这种方式更新列表查看器: lvConstraints.refresh(); 最佳答案 您确定在添加内容
我创建了一个 CheckboxTableViewer 来显示内容列表,如下图所示。问题是表格的滚动条无法正常工作。也许我缺少表格的一些布局参数? 这是代码: public class TableVie
我习惯于使用 Swing,通常使用 JOptionPane.showOptionDialog(...) 向用户显示一组要选择的选项。 现在我正在切换到 Jface 作为 Eclipse 插件...是否
JFace 标签提供程序框架有什么好的概述吗? JFace snippets并没有真正解释不同代之间的关系(3.2、3.3、3.4 之前等) 最佳答案 有许多很好的教程可用。您应该知道您需要了解完整的
JFace 中的另一个错误?我使用标准机制实现了自定义工具提示:CellLabelProvider 实现了方法 getToolTipText()。 一切似乎都很好,但事实并非如此。 我有一个 View
我是一名优秀的程序员,十分优秀!