-
Delphi 限制窗口最大化显示
Delphi 限制窗口最大化显示,当用户单击最大化按钮后,窗口稍微变大了一点,但并没有最大化,有时候,我们需要限制,不让窗口最大化,在编写实现此功能时,定义了WMGetMinMaxInfo,以下代码在函数中定义,用户操作按钮,激活函数:
with Message.MinMaxInfo^ do
begin
ptMaxSize.X := 400; //最大化时宽度
ptMaxSize.Y := 300; //最大化时高度
ptMaxPosition.X := 120; //最大化时左上角横坐标
ptMaxPosition.Y := 120; //最大化时左上角纵坐标
end;
Message.Result := 0; //通知Windows改变了minmaxinfo
- 2022-01-24 18:38:10下载
- 积分:1
-
Delphi 把时间格式转换成字符串
Delphi 把时间格式转换成字符串来显示,在运行的程序界面中,选择一个指定的日期后,可将此日期转换成字符串格式的,也就是不再具备时间的属性,但是自身已经变为字符串了。人可以识别,但机器不再识别为时间了。
procedure TForm1.FormShow(Sender: TObject);
begin
DateTimePicker1.Date:=now();
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text:=datetostr(DateTimePicker1.Date);
end;
- 2022-07-17 07:07:52下载
- 积分:1
-
Delphi实现流程图绘制程序附有源码
Delphi实现流程图绘制程序附有源码,看上去很专业、很高大上的样子。用来绘制工业生产流程图、软件开发流程图等。功能上像绘图软件,功能比较强大,运行界面如下图所示。生成的流程图可编辑文件扩展名为pf,本软件将自动识别。
- 2022-05-25 01:00:17下载
- 积分:1
-
使用Delphi 制作无闪烁的动画效果
使用Delphi 制作无闪烁的动画效果,如何实现不闪烁的动画呢?这个例子或许能找到一些答案:部分代码如下:
var
x,i: Integer;
dir,run: Boolean;
begin
b := TBitMap.Create;
b.Width := AnimWindow.Width;
b.Height := 32;
b.Canvas.Pen.Color := clBtnFace;
b.Canvas.Brush.Color := clBtnFace;
b.Canvas.Rectangle(0,0,AnimWindow.Width,32);
run := True;
dir := False;
x := 0;
while run do
for i := 0 to AnimWindow.ImageList1.Count-1 do
begin
b.Canvas.Rectangle(0,0,AnimWindow.Width,32);
AnimWindow.ImageList1.Draw(b.Canvas,x,0,i);
Synchronize(DrawAnimPic);
Sleep(AnimWindow.SpinEdit1.Value);
if (x = 0) or (x = 300) then dir := not dir;
if dir then Inc(x) else Dec(x);
end;
b.Free;
end;
- 2023-03-22 21:40:04下载
- 积分:1
-
Delphi打开记事本和计算器等外部程序
Delphi打开记事本和计算器等外部程序,应该说是调用外部程序,调用记事本和计处器,单击窗口中的两个按钮,分别会打开Windows自带的记事本和计算器程序。
- 2022-12-21 03:55:04下载
- 积分:1
-
Delphi 快速查询文件
Delphi 快速查询文件,比较老的代码,搜索文件的地址需要手工输入哦,查询的结果会显示在空白处。返回查询的代码如下:
List := TStringList.Create;//创建字符传列表
try
spec := ExtractFileName(filespec);//返回指定文件名
RFindFile(ExtractFilePath(filespec));//返回指定路径
Result := list;//函数返回值是List;
- 2022-03-19 10:17:26下载
- 积分:1
-
Delphi 图片颜色逐渐加深功能的实现
Delphi演示如何将一张图片的颜色加深,类似于调整对比度,不过本效果不加入了渐变加深的动画效果,按住按钮图片一直变暗下去,要知空间,你可看下以下代码:
Bitmap:=image1.Picture.Bitmap;
image1.Height:= Bitmap.Height;
image1.Width:= Bitmap.Width;
for i:=0 to 255 do
begin
sleep(10);
for y:=0 to Bitmap.Height-1 do
begin
pixcolo:=Bitmap.Scanline[y]; //扫描每行像素颜色
for x:=0 to ((Bitmap.Width*3)-1) do
//递减颜色值,不同的递减值可改变不同的速度
if pixcolo[x]>0 then pixcolo[x]:=(pixcolo[x]-1);
end;
Image1.Canvas.Draw(0,0,Bitmap);
Application.ProcessMessages; //让Application去处理消息队伍中的消息
end;
- 2022-03-23 16:34:19下载
- 积分:1
-
Delphi窗口淡入淡出渐变fadein fadeout动画效果
Delphi实现窗口的淡入淡出渐变fadein fadeout动画效果,除了渐变,还有其它的动画形式,比如从中心扩散、水平从左到右、水平从右到左、垂直从上到下、垂直从下到上等。本实例默认状态下是使用了淡入淡出渐变,其它动画效果被注释掉了,如果你想用,可以去掉注释标记。
//淡入效果
//AnimateWindow(self.Handle,1000,AW_CENTER or AW_ACTIVATE);
//从中心扩散
//AnimateWindow(self.Handle,1000,AW_HOR_POSITIVE or AW_ACTIVATE);
//AnimateWindow(self.Handle,1000,AW_SLIDE or AW_HOR_POSITIVE or AW_ACTIVATE);
//水平从左到右
//AnimateWindow(self.Handle,1000,AW_HOR_NEGATIVE or AW_ACTIVATE);
//AnimateWindow(self.Handle,1000,AW_SLIDE or AW_HOR_NEGATIVE or AW_ACTIVATE);
//水平从右到左
//AnimateWindow(self.Handle,1000,AW_VER_POSITIVE or AW_ACTIVATE);
//AnimateWindow(self.Handle,1000,AW_SLIDE or AW_VER_POSITIVE or AW_ACTIVATE);
//垂直从上到下
//AnimateWindow(self.Handle,1000,AW_VER_NEGATIVE or AW_ACTIVATE);
//AnimateWindow(self.Handle,1000,AW_SLIDE or AW_VER_NEGATIVE or AW_ACTIVATE);
//垂直从下到上
- 2022-06-11 17:51:21下载
- 积分:1
-
Delphi 自定义播放窗口
Delphi 自定义播放窗口,指定视频显示窗口,本源码演示的重点主要是播放器窗口外观的设计,调用了外部的一张jpg图片做为播放器的主窗口,让窗口风格首先看上去具有播放器程序的风格,因此,在美化窗口时如何使用jpg格式的图片,是本例要表现的重点功能,希望对窗体设计感兴趣的Delphi初学者好好学习研究一番哦。
本播放器虽然重在演示窗口功能的实现,不过它真的可以播放视频文件,比如mpg格式的文件。
- 2022-05-25 21:56:20下载
- 积分:1
-
Delphi 实现图像热点功能
Delphi 实现图像热点功能,实现一张图片上不同形状区域的热点,定义椭圆形、四边形、三角形的区域变量的热点,相关代码如下:
var
thepoint:array [1..8] of tpoint;//存储多边形顶点坐标
count:integer;
pointnum:array [1..2] of integer;
begin
//四边形顶点坐标,首末点封闭
thepoint[1]:=point(135,99);
thepoint[2]:=point(105,183);
thepoint[3]:=point(129,201);
thepoint[4]:=point(188,92);
thepoint[5]:=point(135,99);
count:=5;//四边形顶点数目,首末点为一点
fourE_rgn:=CreatePolygonRgn(thepoint,count,WINDING);//生成四边形区域
elli_rgn:=CreateEllipticRgn(64,221,231,263);// 生成椭圆形区域
//第一个三角形顶点坐标
thepoint[1]:=point(118,67);
thepoint[2]:=point(32,28);
thepoint[3]:=point(17,90);
thepoint[4]:=point(118,67);
//第二个三角形顶点坐标
thepoint[5]:=point(155,44);
thepoint[6]:=point(202,91);
thepoint[7]:=point(277,44);
thepoint[8]:=point(155,44);
pointnum[1]:=4;//第一个三角形顶点数目
pointnum[2]:=4;//第二个三角形顶点数目
count:=2;//三角形数目
//生成由两个三角形构成的三角形区域
tri_rgn:=CreatePolyPolygonRgn(thepoint,pointnum,count,WINDING);
end;
- 2022-01-26 08:02:50下载
- 积分:1