timage 继承于 Tgraghcontrol 没有 handle 怎么给加 handle 是不是很麻烦?TMyImage = class(TImage)
            private
             FHandle: HWnd;
             
             procedure WndProc(var Msg: TMessage);
            public
             constructor Create(AOwner: TComponent); override;
             destructor Destroy; override;
            published
             property Handle: read FHandle;
            end;            constructor TMyImage.Create...
            begin
             ...
             FHandle:=AllocateHWnd(WndProc);
            end;            destructor TMyImage.Destroy...
            begin
             DeAllocateHWnd(FHandle);
             inherited;
            end;            procedure TMyImage.WndProc(var Msg: TMessage);
            begin
             ...  // 这里应该怎那实现????
            end;

解决方案 »

  1.   

    我看它的核心是Canvas部分
    你不如直接引用
    Image.Canvas.Handle
      

  2.   

    咳,Handle是什么你明白吗?不是说你这么添加了几个成员,它就变成了窗体,只有调用了API CreateWindow、CreateWindowEx创建的那才能是窗体,Image这种东西只是利用父空件的DC绘图而已好好的先把"Windows程序设计"这套书啃啃
      

  3.   

    上面的...此Handle非彼Handle啊,一个是窗体句柄,一个是设备描述表句柄Image.Canvas实际是对Image.Picture.Bitmap.Canvas的调用
      

  4.   

    ehom(?!)   说的好
      

  5.   

    各位大侠
    我想 把 image 切成不规则窗体  主要是完成 画斜线功能 
    而且这个线是可以操作的 所以点击的时候不想有 方框 
    最好还能得到焦点  所以得让他变成 wincontrol 
    是不是很麻烦? 能做到吗?十万火急!!
      

  6.   

    加winHandle倒是不麻煩 看看TTimer 就知道了,它不是窗體,但有Handle,能接收windows Message我看你還是從TWinControl繼承過來吧! 
      

  7.   

    帅哥能否简述以下如何学好DEPHI ,我是学了半年没有成果的,拜托。
    EMAIL: [email protected]
      

  8.   

    to:  Hewin(hewin) 
    TWinControl 继承太麻烦了吧  我要的主要功能是图形 画线
      

  9.   

    winHandle倒是不麻煩 具体如何加?