SWT TreeViewer刷新问题

gw6337275 2010-07-13 06:46:59
我用SWT 做了一表格树,可以动态添加、删除节点,并且支持更改内容,但是刷新的时候就出现了问题,我是用的

TreeViewer.Refresh() 这个方法来进行刷新的,可是这样刷新,每次都会重新填充一次表格树,如果数节点很多,我修改的

又是下面一些的节点,(这个表格树是有滚动条的),改完以后刷新,滚动条就会弹到最上面,要继续操作刚才的节点,就必

须再拉下来,这样非常麻烦。我想实现单节点的局部刷新,看了TreeViewer这个类里带的几个刷新函数,应该是有局部刷新功

能的,但是怎么用都达不到效果,在单纯的表格中直接用Update()这个函数就OK了,但这里就比较麻烦,有哪位大虾清楚的,

指点小弟一下!THK!
...全文
726 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ylc2010 2010-08-16
  • 打赏
  • 举报
回复
哇靠,你们几个答非所问嘛,没见楼主要问什么吗
wu_07 2010-07-14
  • 打赏
  • 举报
回复


Jface下只需要更新对应的模型就可以了。


别告诉你是直接用SWT构建树的

霜之哀伤 2010-07-13
  • 打赏
  • 举报
回复
如果你调用refresh()都不可以,那说明你的ContentProvider和LabelProvider出问题了.
gw6337275 2010-07-13
  • 打赏
  • 举报
回复
不行。。。主要是在刷新根节点的时候,子节点的内容也会有相应的改变,怎么刷新都不OK。。

refresh();
refresh(object);
refresh(object, boolean);
update(object, properties[]);
update(object[], properties[]);

一共有这几种刷新方法,都用过了,达不到效果,不知道用的正确不正确,有清楚的可以详细说说! THK!
霜之哀伤 2010-07-13
  • 打赏
  • 举报
回复
refresh(object)不行?
作者:talent_marquis邮件:talent_marquis@163.com################19/12/2007更新###################新添加/重写的功能:1. 已实现简单的剪切/复制/粘贴功能(尚不能和外界程序交互)2. 添加创建新文件夹功能3. 添加选择全部/文件/文件夹功能4. 增加对创建新文件夹,重命名,删除,粘贴操作的异常处理5. FileUtil中增加getFileCentent方法,用于读取文本文件内容6. 重写AboutDialog7. 重写ExitAction8. 重写FileUtil中doPaste()方法,显著提高速度,修正拷贝文件时会导致文件不正常的严重Bug9. 修正其他部分已发现Bug10. 版本号升级为0.5尚未实现的功能:1. 与外界程序的交互2. 拖拽3. 国际化4. 输入文件名时对特殊字符的验证################17/12/2007更新###################新添加/重写的功能:1. 排序功能已加入菜单栏和弹出菜单2. 重写图标载入方法,已经可以实现图标动态载入和识别3. 重写TableViewer中tableColumn生成载入方法,已经可以实现tablecolumn的半动态载入和识别4. 实现动态识别文件类型5. 进行删除操作时,对删除的文件进行识别6. 更新添加了一些FileUtil中的方法,并且把这个类的注释写的差不多了 - -注意:1. icons文件夹内的文件结构有变化。2. jar文件没有更新,如果需要打好包的jar文件请等我把功能都实现后的那个版本 - -尚未实现的功能:1. 剪切/复制/粘贴功能2. 拖拽功能3. 详尽的注释4. 异常处理5. 国际化################14/12/2007更新###################已经实现的基本功能:1. 树形浏览结构2. 双击 运行程序/进入下一级菜单目录3. 返回上一级菜单4. 重命名5. 刷新6. 删除7. 按文件名/大小/类型/最后修改日期排序8. 对当前文件夹进行过滤操作9. 对当前文件夹的简要统计尚未实现的功能:1. 剪切/复制/粘贴2. 拖拽3. 弹出菜单中的排序选项4. 动态识别文件类型5. 详尽的注释已知的Bug:1. TreeViewer进行目录切换时,TableViewer窗体有时会变成空白2. 有特殊字符的过滤操作将导致异常3. 重命名没有考虑特殊字符4. 有大量文件(几百个以上)的目录会打开的很慢5. 文件删除失败时没有提示######新添加/重写的功能:1. 已实现简单的剪切/复制/粘贴功能(尚不能和外界程序交互)2. 添加创建新文件夹功能3. 添加选择全部/文件/文件夹功能4. 重写AboutDialog5. 增加对创建新文件夹,重命名,删除,粘贴操作的异常处理6. 重写ExitAction7. 修正部分已发现Bug尚未实现的功能:1. 与外界程序的交互2. 拖拽3. 国际化4. 输入文件名时对特殊字符的验证
################19/12/2007更新################### 新添加/重写的功能: 1. 已实现简单的剪切/复制/粘贴功能(尚不能和外界程序交互) 2. 添加创建新文件夹功能 3. 添加选择全部/文件/文件夹功能 4. 增加对创建新文件夹,重命名,删除,粘贴操作的异常处理 5. FileUtil中增加getFileCentent方法,用于读取文本文件内容 6. 重写AboutDialog 7. 重写ExitAction 8. 重写FileUtil中doPaste()方法,显著提高速度,修正拷贝文件时会导致文件不正常的严重Bug 9. 修正其他部分已发现Bug 10. 版本号升级为0.5 尚未实现的功能: 1. 与外界程序的交互 2. 拖拽 3. 国际化 4. 输入文件名时对特殊字符的验证 ################17/12/2007更新################### 新添加/重写的功能: 1. 排序功能已加入菜单栏和弹出菜单 2. 重写图标载入方法,已经可以实现图标动态载入和识别 3. 重写TableViewer中tableColumn生成载入方法,已经可以实现tablecolumn的半动态载入和识别 4. 实现动态识别文件类型 5. 进行删除操作时,对删除的文件进行识别 6. 更新添加了一些FileUtil中的方法,并且把这个类的注释写的差不多了 - - 注意: 1. icons文件夹内的文件结构有变化。 2. jar文件没有更新,如果需要打好包的jar文件请等我把功能都实现后的那个版本 - - 尚未实现的功能: 1. 剪切/复制/粘贴功能 2. 拖拽功能 3. 详尽的注释 4. 异常处理 5. 国际化 ################14/12/2007更新################### 已经实现的基本功能: 1. 树形浏览结构 2. 双击 运行程序/进入下一级菜单目录 3. 返回上一级菜单 4. 重命名 5. 刷新 6. 删除 7. 按文件名/大小/类型/最后修改日期排序 8. 对当前文件夹进行过滤操作 9. 对当前文件夹的简要统计 尚未实现的功能: 1. 剪切/复制/粘贴 2. 拖拽 3. 弹出菜单中的排序选项 4. 动态识别文件类型 5. 详尽的注释 已知的Bug: 1. TreeViewer进行目录切换时,TableViewer窗体有时会变成空白 2. 有特殊字符的过滤操作将导致异常 3. 重命名没有考虑特殊字符 4. 有大量文件(几百个以上)的目录会打开的很慢 5. 文件删除失败时没有提示###### 新添加/重写的功能: 1. 已实现简单的剪切/复制/粘贴功能(尚不能和外界程序交互) 2. 添加创建新文件夹功能 3. 添加选择全部/文件/文件夹功能 4. 重写AboutDialog 5. 增加对创建新文件夹,重命名,删除,粘贴操作的异常处理 6. 重写ExitAction 7. 修正部分已发现Bug 尚未实现的功能: 1. 与外界程序的交互 2. 拖拽 3. 国际化 4. 输入文件名时对特殊字符的验证

58,452

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧