先请大家看下我的软件:agenius.go.nease.net
凡此贴内回复(无论问题回答出来没有)且用邮件通知我的人都可以免费得到PureEdit这个版本的注册码(我会每隔2,3天给大家发一次);问题是这样:
这个软件是用SynEdit和ExpressBars做的;我用Action管理,这样在ActionMgr的OnUpDate事件里写上界面更新的代码,比如“编辑”里那些菜单什么时候有效,什么时候无效;但是ExpressBars重绘比较慢,非常占用时间,这样导致软件开启打一点的软件后就无法编辑了,响应十分缓慢;请问有什么好的方法解决这个问题?(别说让我换控件)
具体代码是这样的:
SynEdit写在TssnEditor类里,TssnEditor提供CanCut/CanPaste....方法供界面检测;在ActionMgr的OnUpDate里写actEditCut.Enabled:= Editor.CanCut;但这样太慢,“卡”的几乎用不了(ExpressBars还提供了LockUpDate方法,用了后效果也不好),后来写在每个Action自己的OnUpDate事件里,就成现在这样了,10000行以上的文件几乎没法编辑,但如果不更新界面的话,或者不用ExpressBars,用标准Menu控件的话,效果就好太多,几乎不受影响,郁闷ing;
现在有两个想法:
1.自己写一个action,就像标准action里面的Cut,Paste,把DelLine,DelFromBegin什么的都写成标准action,这样就不用从Editor里获取状态;
2.在申旻的《delphi高手突破》里提到了一种回调函数的方法,不置可否实现?
以上两种方法都是想了一下,没有具体实践,一是按本人水平实践起来有些难度,二是不确定实现后是否可以却是解决问题,特此向各路高手请教。请各位不吝赐教,说说自己的想法,或者还有什么其他方法?如果不会也请帮我顶 :)up有分!
凡此贴内回复(无论问题回答出来没有)且用邮件通知我的人都可以免费得到PureEdit这个版本的注册码(我会每隔2,3天给大家发一次);问题是这样:
这个软件是用SynEdit和ExpressBars做的;我用Action管理,这样在ActionMgr的OnUpDate事件里写上界面更新的代码,比如“编辑”里那些菜单什么时候有效,什么时候无效;但是ExpressBars重绘比较慢,非常占用时间,这样导致软件开启打一点的软件后就无法编辑了,响应十分缓慢;请问有什么好的方法解决这个问题?(别说让我换控件)
具体代码是这样的:
SynEdit写在TssnEditor类里,TssnEditor提供CanCut/CanPaste....方法供界面检测;在ActionMgr的OnUpDate里写actEditCut.Enabled:= Editor.CanCut;但这样太慢,“卡”的几乎用不了(ExpressBars还提供了LockUpDate方法,用了后效果也不好),后来写在每个Action自己的OnUpDate事件里,就成现在这样了,10000行以上的文件几乎没法编辑,但如果不更新界面的话,或者不用ExpressBars,用标准Menu控件的话,效果就好太多,几乎不受影响,郁闷ing;
现在有两个想法:
1.自己写一个action,就像标准action里面的Cut,Paste,把DelLine,DelFromBegin什么的都写成标准action,这样就不用从Editor里获取状态;
2.在申旻的《delphi高手突破》里提到了一种回调函数的方法,不置可否实现?
以上两种方法都是想了一下,没有具体实践,一是按本人水平实践起来有些难度,二是不确定实现后是否可以却是解决问题,特此向各路高手请教。请各位不吝赐教,说说自己的想法,或者还有什么其他方法?如果不会也请帮我顶 :)up有分!
解决方案 »
- delphi 设置代理问题 急
- 好久没有使用该语言了。关于按下按钮就直接打印(如发票)。特殊格式打印!
- --- >高分求解超难问题!!关于窗口显示!!
- 请教一个SQL的问题
- 有关属性(property)的一个小问题。
- 获取网卡号
- 取鼠标点击的文件名,能在鼠标选中文件时就得到文件名!300分!分批给,不食言!
- 谁能给我两个例子,关于ereport和creport连接表(db或dbf)的,谢谢。
- 用Delphi写的ActiveXForm控件,为什么属性值保存不了?
- Delphi中如何得知默认打印机当前打印任务的个数?
- 如何动态将打印机纸张大小由A4设置为A3?
- msn的翻译机器人:[email protected],赶快加入,人数有限!
应该不是很长,主要好像是DevExpressBars更新的不够快。因为用标准的TMenu控件的时候就很好。多谢两位帮我顶,大家继续哦;
要注册码得给我发邮件,写清楚机器码,此贴至2005年1月1日有效;