用户自定义控件大小和位置
来源:互联网 发布:不去健身房健身 知乎 编辑:程序博客网 时间:2024/05/14 10:32
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
procedure Edit1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Edit1MouseDown(sender: tobject; button: tmousebutton;
Shift: tshiftstate; x, y: integer);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Edit1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if (x>=0)and(x<=5) then
begin
if (y>=0)and(y<=5) then Edit1.cursor:=crsizenwse;
if (y>5)and(y<Edit1.height-5) then Edit1.cursor:=crsizewe;
if (y>=Edit1.height-5)and(y<=Edit1.height) then Edit1.cursor:=crsizenesw;
end
else if (x>5)and(x<Edit1.width-5) then
begin
if (y>=0)and(y<=5) then Edit1.cursor:=crsizens;
if (y>5)and(y<Edit1.height-5) then Edit1.cursor:=crarrow;
if (y>=Edit1.height-5)and(y<=Edit1.width) then Edit1.cursor:=crsizens;
end
else if (x>=Edit1.width-5)and(x<=Edit1.width) then
begin
if (y>=0)and(y<=5) then Edit1.cursor:=crsizenesw;
if (y>5)and(y<Edit1.height-5) then Edit1.cursor:=crsizewe;
if (y>=Edit1.height-5)and(y<=Edit1.width) then Edit1.cursor:=crsizenwse;
end;
end;
procedure tform1.Edit1MouseDown(sender: tobject; button: tmousebutton;
shift: tshiftstate; x, y: integer);
begin
releasecapture;
if (x>=0)and(x<=5) then
begin
//左上角方向改变大小
if (y>=0)and(y<=5) then Edit1.perform(wm_syscommand,$f004,0);
//左侧
if (y>5)and(y<Edit1.height-5) then Edit1.perform(wm_syscommand,$f001,0);
//左下角
if (y>=Edit1.height-5)and(y<=Edit1.height) then Edit1.perform(wm_syscommand,$f007,0);
end
else if (x>5)and(x<Edit1.width-5) then
begin
//上侧
if (y>=0)and(y<=5) then Edit1.perform(wm_syscommand,$f003,0);
//移动控件
if (y>5)and(y<Edit1.height-5) then Edit1.perform(wm_syscommand,$f012,0);
//下侧
if (y>=Edit1.height-5)and(y<=Edit1.width) then Edit1.perform(wm_syscommand,$f006,0);
end
else if (x>=Edit1.width-5)and(x<=Edit1.width) then
begin
//右上角
if (y>=0)and(y<=5) then Edit1.perform(wm_syscommand,$f005,0);
//右侧
if (y>5)and(y<Edit1.height-5) then Edit1.perform(wm_syscommand,$f002,0);
//右下角
if (y>=Edit1.height-5)and(y<=Edit1.width) then Edit1.perform(wm_syscommand,$f008,0);
end;
end;
end.
- 用户自定义控件大小和位置
- MFC中控件的大小和位置自定义代码
- 改变控件大小和位置
- 自定义Dialog位置和大小
- Android自定义控件热身——View的坐标位置和大小详解
- Android自定义控件热身——View的坐标位置和大小详解
- VC6调节控件的位置和大小
- 鼠标调整控件的位置和大小
- 运行时改变控件大小和位置
- 动态调整对话框控件位置和大小
- android 动态改变控件位置和大小
- MFC改变控件位置和大小
- VC6调节控件的位置和大小
- MFC 改变控件大小和位置
- android 动态改变控件位置和大小
- MFC 改变控件大小和位置
- android 动态改变控件位置和大小
- android 控制控件的位置和大小
- ArrayList中的数据排序--java对象排序
- 工作组条件下建立MS SQL 2005 镜像
- Oracle
- Java窗体居中显示
- SQL 存储过程连接远程服务器数据库的方法
- 用户自定义控件大小和位置
- VC中如何关闭窗口退出程序?
- C#修改文件或文件夹名称
- ADO记录集_RecordsetPtr访问SQL数据库
- 孟岩:重新擦亮思考的火花
- 你怎能证明圣经上的话语是上帝的话语呢?
- 我的网站发布了!
- 程序员的爱情感悟
- 精英荟萃 SMX-搜索引擎营销大会 聚焦 ★中国•南京★