Board logo

Subject: TCnBitBtn 的问题 [Print This Page]

Author: dorry    Time: 2009-4-21 20:34     Subject: TCnBitBtn 的问题

以前版本作了个软键盘,工作正常。现在突然不能编译。CPU 占用 50% 。
界面不能显示正常,编译时死机。
d2009 相同。好像从去年某个版本开始。以前OK。

Attachment: [键盘不能显示] Archive.zip (2009-4-21 20:34, 72.06 K) / Download count 434
http://bbs.cnpack.org/attachment.php?aid=619
Author: Passion    Time: 2009-4-21 22:46

不能编译时出什么错?
Author: dorry    Time: 2009-4-22 12:09     Subject: 死机!

只能强制结束编译器。
Author: dorry    Time: 2009-4-22 12:12     Subject: 和此处代码有关?

for i:= 0 to ComponentCount - 1 do begin
      if Components is TCnBitBtn  then
        TCnBitBtn(Components).Cursor:=crHandPoint ;
      if TCnBitBtn(Components).Name='CnBitBtn3' then
         TCnBitBtn(Components).Cursor:=crSizeAll ;
    end;
Author: Passion    Time: 2009-4-22 15:04

照道理这样的代码不会导致编译器死掉。
您是否装了CnPack IDE专家包或者其它专家包?
Author: dorry    Time: 2009-4-22 19:57     Subject: 没有安装CnPack IDE专家包或者其它专家包

没有安装CnPack IDE专家包或者其它专家包
可以发到给你,您吗?
Author: dorry    Time: 2009-4-22 20:19     Subject: 更换到 windows SPEEDBUTTON OK

单步我跟踪到,Formshow 死机
Author: dorry    Time: 2009-4-22 20:20     Subject: 更换到 windows SPEEDBUTTON OK

单步我跟踪到,Formshow 死机。而且没有使用其它控件。
Author: dorry    Time: 2009-4-22 20:41     Subject: 原因找到,请大侠解决 代码:1549 行

procedure TCnCustomButton.WMWindowPosChanged(var Message: TMessage);
begin
  //Invalidate;注释掉后 OK
  inherited;
  // 2008年08月03日添加,如果不继承原消息处理将会使控件无法改变大小- -好像就那时更新完后,不能使用不得不全部换成 TSpeedbutton
end;

[ 本帖最后由 dorry 于 2009-4-22 20:44 编辑 ]
Author: bahamut8348    Time: 2009-4-23 15:58

请问LZ能否提供点相同问题的代码片段呢?

目前我无法复现LZ所遇到的问题




Welcome to CnPack Forum (http://bbs.cnpack.org/) Powered by Discuz! 5.0.0