日期:2014-05-20  浏览次数:20767 次

字符串动态处理
比如我的UI上的一个标题栏,我用了一个label显示标题,form的size改变,当form的size能够完全显示这个label.Text时,完全显示,当form的size小于label.Text.length,即不能完全显示时,这个标题栏不能显示的部分用“...”代替,就像一个web   page在拖拉过程中,title的变化一样!
我本来实在form的Resize事件中判断form.width   和字符串长度的关系,然后截取,加上“...”,但是效果不好,由于拖动的速度不一样,他不是渐变的过程,而是一个跳跃的过程,甚至出错。
请大家想想办法,能有什么办法,达到以上效果!   thx

------解决方案--------------------
...form的Resize事件中判断form.width 和字符串长度的关系,然后截取,加上“...”...
代码后面加一句
Application.DoEvents;
------解决方案--------------------
幫頂
------解决方案--------------------
就在resize事件里处理。没错。

问题应该出在你的处理算法上。

先把标题栏只显示一个字+…的时候窗体的width值找出来。
然后是二个字+…的时候窗体的width值;
然后是三个
4个
到你的标题能完全显示的长度。

这样就有了一个序列,一个一个判断下来,不至于会出BUG的。