博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
演示控件的 Anchors 属性
阅读量:7044 次
发布时间:2019-06-28

本文共 2034 字,大约阅读时间需要 6 分钟。

  hot3.png

本例效果图:
26153521_KEKp.gif

准备工作: 新建工程后, 在窗体上添加一个 Panel 和四个 CheckBox; 双击它们产生默认事件, 然后全选代码, 用下面代码覆盖.

unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, ExtCtrls;type  TForm1 = class(TForm)    Panel1: TPanel;    CheckBox1: TCheckBox;    CheckBox2: TCheckBox;    CheckBox3: TCheckBox;    CheckBox4: TCheckBox;    procedure FormCreate(Sender: TObject);    procedure CheckBox1Click(Sender: TObject);    procedure CheckBox2Click(Sender: TObject);    procedure CheckBox3Click(Sender: TObject);    procedure CheckBox4Click(Sender: TObject);    procedure Panel1Click(Sender: TObject);    procedure SetAnchor(Sender: TObject; ak: TAnchors); {自定义的过程}  end;var  Form1: TForm1;implementation{$R *.dfm}{给 CheckBox 做一个公用过程}procedure TForm1.SetAnchor(Sender: TObject; ak: TAnchors);begin  with Panel1 do if TCheckBox(Sender).Checked then    Anchors := Anchors + ak  else    Anchors := Anchors - ak;end;{初始化}procedure TForm1.FormCreate(Sender: TObject);begin  Panel1.Anchors := [akLeft, akTop]; {这本来就是默认值}  CheckBox1.Checked := True;  CheckBox2.Checked := True;  CheckBox1.Caption := 'akLeft';  CheckBox2.Caption := 'akTop';  CheckBox3.Caption := 'akRight';  CheckBox4.Caption := 'akBottom';  Panel1.ParentBackground := False;  Panel1.Color := clYellow;end;{变化窗体大小}procedure TForm1.Panel1Click(Sender: TObject);const  s1 = '点击放大窗体';  s2 = '点击缩小窗体';begin  if Panel1.Caption = s2 then  begin    Panel1.Caption := s1;    Width := Round(Width / 1.5);    Height := Round(Height / 1.5);  end  else  begin    Panel1.Caption := s2;    Width := Round(Width * 1.5);    Height := Round(Height * 1.5);  end;end;procedure TForm1.CheckBox1Click(Sender: TObject);begin  SetAnchor(Sender, [akLeft]);end;procedure TForm1.CheckBox2Click(Sender: TObject);begin  SetAnchor(Sender, [akTop]);end;procedure TForm1.CheckBox3Click(Sender: TObject);begin  SetAnchor(Sender, [akRight]);end;procedure TForm1.CheckBox4Click(Sender: TObject);begin  SetAnchor(Sender, [akBottom]);end;end.

转载于:https://my.oschina.net/hermer/blog/320101

你可能感兴趣的文章
使用Gradle发布Android开源项目到JCenter
查看>>
分布式系统
查看>>
H3C路由器上配置本地端口镜像
查看>>
没有PowerPoint2010的环境如何播放.PPTX文件
查看>>
Outlook 2010 中查看邮件头
查看>>
AWS - Cloudfront CDN 测试
查看>>
PXE+Kickstart详细版 【第一次编辑】
查看>>
云平台与云主机选择的经验和建议
查看>>
如何验证及更改XenDesktop版本
查看>>
linux tc 对本机网卡限速
查看>>
WCF简单教程(8) 安全 - Windows认证
查看>>
单引号转义时load_file/outfile 生成一句话
查看>>
js的正则处理
查看>>
两日公开课:伯克利深度强化学习训练营 | 视频+PPT
查看>>
通过DockerFile创建ssh服务镜像
查看>>
windows server 2008中关于网络的进阶设定
查看>>
Python 并发编程(一)之线程
查看>>
苹果 vs AMD 高低互现
查看>>
手把手教你用C#打包应用程序(安装程序)
查看>>
软件架构设计模式简述
查看>>