弄一个图片,里面画个黑框,和button一样大,放在image里,拖到button上
onMouseDown时
image1.visible:=true;
button1.visible:=false;
onMouseUp时相反
onMouseDown时
image1.visible:=true;
button1.visible:=false;
onMouseUp时相反
解决方案 »
- 如何绕过被拦截的API?
- 用过RzGruopBar的朋友帮个忙,怎样在RzGroup上显示图标或是图片(有图),谢谢!
- 如何将tstrings类型的参数导入ttreeview中
- 【求助】如何处理出错
- 关于LISTVIEW的打印
- 从哪能下载Cxgrid组件及其通用函数(注意是通用的)?
- 那有DELPHI6企业版下载,给分
- InstallShield Express Custom Editon for Delphi那里有下载?
- 放出邮编区号查询全部源代码,帮我完善...
- 获得对方的ip?
- 动态数据表和动态SQL问题。请高手解决,多谢!
- y的x次方在delphi中如何实现?有没有这样的操作符或函数?
当选中按钮时,显示该按钮的区域框,显示区域框后可拖动按钮,也通过区域框可改变按钮的大小! 如:DELPHI窗体设计时,增加一个按钮后可改变按钮的位置,也可拖动按钮!!!,请教各位如何在程序中实现??????
当选中按钮时,显示该按钮的区域框,显示区域框后可拖动按钮,也通过区域框可改变按钮的大小! 如:DELPHI窗体设计时,增加一个按钮后可改变按钮的大小,也可拖动按钮!!!,请教各位如何在程序中实现??????
//运行期拖动一个控件************************************************************
//==============================================================================
procedure DragControl(WinControl: TWincontrol);
const SC_DRAGMOVE = $F012;
begin
ReleaseCapture;
WinControl.Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0);
end;
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
onMouseMove
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
procedure TForm_Main.MoveWinControl(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
DragControl(Sender as TWinControl);
end;
var
Form1: TForm1;
OldPos,CurrentPos:TPoint;
IsLeftDown:Boolean;
implementation
{$R *.DFM}
procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
OldPos.x:=X;
OldPos.y:=Y;
if Button=mbLeft then
IsLeftDown:=True;
end;
procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if IsLeftDown then
begin
CurrentPos.x:=X;
CurrentPos.y:=Y;
Button1.Left:=CurrentPos.x-oldPos.x+Button1.Left;
Button1.Top:=CurrentPos.y-OldPos.y+Button1.Top ;
end;
end;
procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
IsLeftDown:=False;
end;
2)调整大小我没有把握,不过我想应该可以实现的