无标题栏窗口程序设计中鼠标拖动技巧
2008-04-09 04:17:39来源:互联网 阅读 ()
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.comunitformyd;
interface es
Windows,Messages,SysUtils,Classes,Graphics,
Controls,Forms,Dialogs,StdCtrls,ExtCtrls;
type
TForm1=class(TForm)
Timer1:TTimer;
Button1:TButton;
procedureFormCreate(Sender:TObject);
procedureTimer1Timer(Sender:TObject);
procedureButton1MouseDown(Sender:
TObject;Button:TMouseButton;
Shift:TShiftState;X,Y:Integer);
procedureButton1MouseMove(Sender:
TObject;Shift:TShiftState;X,
Y:Integer);
procedureButton1Click(Sender:TObject);
private{Privatedeclarations}
public{Publicdeclarations}
end;
//定义全程变量
var
Form1:TForm1;
dx,dy:integer;
implementation{$R*.DFM}
//程序初始化
procedureTForm1.FormCreate(Sender:TObject);
begin
form1.borderstyle:=bsnone;
form1.height:=button1.height;
form1.width:=button1.width;
button1.top:=0;
button1.left:=0;
end;
//实时显示当前时间
procedureTForm1.Timer1Timer(Sender:TObject);
var
ds,ts,ps:string;
begin
ds:=DATE: DateToStr(Date);
ts:=TIME: timeToStr(time);
ps:=|__welcome__|;
button1.Caption:=ds ps ts;
end;
//记录鼠标当前位置
procedureTForm1.Button1MouseDown(Sender:
TObject;Button:TMouseButton;
Shift:TShiftState;X,Y:Integer);
begin
dx:=X;
dy:=y;
IfShift=[ssright]Then
close;//右键单击退出程序
end;
//根据鼠标移动距离调整窗口位置
procedureTForm1.Button1MouseMove(Sender:
TObject;Shift:TShiftState;X,
Y:Integer);
var
mx,my:integer;
begin
IfShift=[ssleft]Then
begin
mx:=X-dx;
my:=Y-dy;
Form1.Left:=Form1.Left mx;
Form1.Top:=Form1.Top my;
Form1.Caption:=intToStr(X) : intToStr(Y);
end;
end;
end.
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash