Subject:
发现BUG。。。。。关于 括号匹配的问题;
[Print This Page]
Author:
inbreak
Time:
2009-6-7 22:44
Subject:
发现BUG。。。。。关于 括号匹配的问题;
第一幅图是正常的时候的样子。
第二幅图是鼠标焦点进去代码中的样子。
Image Attachment:
1.JPG
(2009-6-7 22:44, 5.07 K) / Download count 390
http://bbs.cnpack.org/attachment.php?aid=650
Image Attachment:
2.JPG
(2009-6-7 22:44, 6.04 K) / Download count 407
http://bbs.cnpack.org/attachment.php?aid=651
Author:
inbreak
Time:
2009-6-7 22:47
我把鼠标焦点放在这段代码的后面时,就变成这样子了。
如果关掉 专家 的括号匹配 功能。就没有此问题。
为此我下载最新版的 专家。。问题,依然是这样。
Image Attachment:
3.JPG
(2009-6-7 22:47, 5.99 K) / Download count 398
http://bbs.cnpack.org/attachment.php?aid=652
Author:
Passion
Time:
2009-6-7 23:22
请问您的DELPHI版本?是否D2009?
Author:
inbreak
Time:
2009-6-8 08:30
D2007
Author:
Passion
Time:
2009-6-8 12:19
这个问题是由于字符串中的d和%之间的那个字符(可能是全角星号?)引起的,一般我们绘制括号前计算括号的位置的时候,会将字符串中的双字节字符当作两个字符宽度处理,然而有些特殊字符比如楼主图中的那个,还有部分外文字符等,自身是双字节,但绘制只占一个字符宽度,这就导致了我们计算出来的位置的偏差。
如果逐个字符去判断,又难免会影响性能,不太好处理。
Author:
inbreak
Time:
2009-6-8 15:31
发现了。
凡是我的 format 语句中 有 × (全角) 就会出现问题。。。换成 * 就没有问题。
但是为什么 format 语句里面有 中文不会出现呢?
Author:
Passion
Time:
2009-6-8 18:23
因为“中”这全角字符确实是占两个字符的宽度,而全角的星号在编辑器这字体中只占一个字符的宽度。
Welcome to CnPack Forum (http://bbs.cnpack.org/)
Powered by Discuz! 5.0.0