如何在VIRTUAL模式下以编程方式在SWT树上触发setData事件

时间:2012-05-15 03:33:06

标签: tree swt virtual

是否可以在VIRTUAL模式下以编程方式在SWT树上触发setData事件?

3 个答案:

答案 0 :(得分:1)

Widget中的notifyListeners - 方法可以做到这一点。

tree.notifyListeners(SWT.SetData, <EventData>)

你必须构建并交出适当的事件。

答案 1 :(得分:1)

我想补充 Fabian Zeindl answer,这对我有用,以防这些附加信息对某人有用。

使用class AvatarUploader < CarrierWave::Uploader::Base # Include RMagick or MiniMagick support: # include CarrierWave::RMagick include CarrierWave::MiniMagick if Rails.env.production? storage :fog else storage :file end def store_dir "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" end version :thumb do process :resize_to_fill => [100, 100] end end end def extension_white_list %w(jpg jpeg gif png) end end 标志时,在将视图滚动到视图中时,元素会按需加载SWT.VIRTUAL。我想在TreeItem中选择一个尚未加载为TreeViewer的元素,这会导致TreeItem无法正常工作。
这意味着必须将给定元素显式加载为TreeItem。

以下是一个简化的示例代码:

viewer.setSelection()

答案 2 :(得分:0)

Sam Zheng,两年后,我当然希望你找到答案,但这里是其他寻求者的真相:

对根级项目使用Tree.clear(index,boolean)Tree.clearAll(boolean)方法,对根目录下的项目使用TreeItem.clear(index,boolean)TreeItem.clear(boolean)方法。