如何将image空件作成圆形,扩展名为gif的图片怎么加载进来?
const SC_DragMove=$F012;
begin
ReleaseCapture;
(Sender as TWinControl).Perform(WM_SysCommand,SC_DragMove,0);
end;
后如何不让移动时显示的轮廓为方框?

解决方案 »

  1.   

    将image空件作成圆形:
      因为image本身没有句柄,所以要将控件变成圆形,必须将image控件放到panel(或其它有句柄)的控件中,然后用下面代码:
    procedure TForm1.FormCreate(Sender: TObject);
    var hr :thandle;
    begin
     BeginPath(Canvas.Handle);
     Canvas.Ellipse(0,0,100,100);
     EndPath(Canvas.Handle);
     hr:=PathToRegion(Canvas.Handle);
     setwindowrgn(panel1.Handle,hr,true); //设置园形image
    end;
      

  2.   

    xuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexuexue
      

  3.   

    来这里下载GifImage控件:http://202.96.70.228/cakk/delphi/gifimage.exeuses gifimage;var
     FBitmap :TBitmap;
     FGif :TGifImage;
    begin
     FGif :=TGifImage.Create;
     FGif.LoadFromFile('.......');
     FBitmap :=TBitmap.Create;
     //FBitmap.PixelFormat :=pf24bit;
     FBitmap.Assign(FGif);
     FGif.Free;
     Image.Picture.Bitmap.Assign(FBitmap);
     FBitmap.Free;
    end; 
      

  4.   

    如何让控件拖动时能平滑移动,且能响应StartDrag及EndDrag呢?
      

  5.   

    继承TPanel,加上拖动的处理,
    然后用它做容器,任何控件就都可以拖动了。