踢
踢你PP
Unregistered / Unconfirmed
GUEST, unregistred user!
我在一个panel上面放了两个image控件,一个处于上层一个处于下层(用bring to front和send to back),上层的image设置了transparent:=true,Aligh:=alClient,下层的未作设置,当上层image加载图片后部分区域透明,露出下层image。然后在上层image的OnMouseDown,OnMouseMove,OnMouseUp中写入了下层image的拖动代码,当下层image被拖动时,与上层image不透明区域交接部分会出现闪烁,请问该如何解决,下附代码:
代码:
procedure TfrmMain.imgBackMouseDown(Sender: TObject;
Button: TMouseButton;
Shift: TShiftState;
X, Y: Integer);
begin
intLeft:=mouse.CursorPos.X - frmMain.Left -imgPic.Left -1;
intTop:=mouse.CursorPos.Y -frmMain.Top -imgPic.Top -51;
bStartmove:=true;
end;
procedure TfrmMain.imgBackMouseMove(Sender: TObject;
Shift: TShiftState;
X,
Y: Integer);
begin
if(bStartmove)then
begin
imgPic.Left:=mouse.CursorPos.X -intLeft - frmMain.Left;
imgPic.Top:=mouse.CursorPos.Y - frmMain.Top -50-intTop;
end;
end;
procedure TfrmMain.imgBackMouseUp(Sender: TObject;
Button: TMouseButton;
Shift: TShiftState;
X, Y: Integer);
begin
bStartmove:=false;
end;