在SWT树或表中嵌入自定义小部件
使用SWT,是否可以创建自定义窗口小部件并将其插入Table
或Tree
,就像它是TreeItem
或TableItem
?
我试图创建一个类并扩展TreeItem
但是我收到了这个警告:
MyClass illegally extends TreeItem
有没有办法做到这一点?
大多数SWT小部件都不是为扩展而设计的,并通过检查当前类是否在org.eclipse.swt.widgets
包中来强制执行此操作。 这可以解决,但非常强烈劝阻。
小部件通常包含许多特定于平台的代码,覆盖类可能很容易使用只能在一个平台上运行的代码。
还有各种其他方法来扩展表和树。 使用TableEditor
和TreeEditor
是一种方法。 使用SWT.MeasureItem
, SWT.PaintItem
和SWT.EraseItem
自己绘制表/树是另一个。