首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

为什么 Tlabel 的效率这么高?如果用canvas模拟一个label的行为并也有这么高的效率?该如何处理

2012-03-09 
为什么 Tlabel 的效率这么高?如果用canvas模拟一个label的行为并也有这么高的效率?我在窗体上放一上百个la

为什么 Tlabel 的效率这么高?如果用canvas模拟一个label的行为并也有这么高的效率?
我在窗体上放一上百个label,并实现它们可以运行时拖放的功能,cpu利用率根本未见提升,而我用canvas模拟画label,cpu就占得很多,为什么会这样?

[解决办法]
是不是处理了OnPaint之类的事件
[解决办法]
在绘制过程中加一些sleep是不是会好一些
[解决办法]
可能是由于鼠标在移动时,不断地触发画画,CPU时间被大量占用。
是不是设个标志位,在画的过程中防止再进入
[解决办法]
画LABEL慢?动态创建个LABEL试试不妨.
[解决办法]
你在canvas画的程序怎么写的?
[解决办法]
不要用onmousemove,处理invlidate消息
[解决办法]
是Invalidate,在paint中写好重画算法。重画时不要全部重画,一般使用InvalidateRect
[解决办法]
直接画不可能比Label慢的, 只会比他快很多!

你的算法一定有问题, 估计你是整个窗口重绘了。
[解决办法]
如果整个窗口都重绘,那一定慢多了

热点排行