-
Delphi 使用Canvas美化ListBox列表项
Delphi 使用Canvas美化列表项,当用户鼠标单击ListBox列表项时,该列表项高亮显示,改变背景色,文字居中对齐,如图所示。
主要是使用了Delphi中的Canvas.FrameRect对其进行美化,具体代码有兴趣可参考:
Canvas.FrameRect(Clientrect);
if odSelected in State then
begin
Canvas.Brush.Color:=clRed;
Canvas.RoundRect(Rect.Left,Rect.Top,Rect.Right,Rect.Bottom,8,15);
setBkMode(Canvas.Handle,TRANSPARENT );
Canvas.TextOut((Rect.right-Rect.Left) div 2,Rect.Top,Items.Strings[Index]);
end
else
begin
Canvas.Brush.Color:=clSkyBlue;
Canvas.RoundRect(Rect.Left,Rect.Top,Rect.Right,Rect.Bottom,15,15);
Canvas.TextRect(Rect,Rect.Left,Rect.Top,Items.Strings[Index]);
end;
- 2022-06-01 23:33:23下载
- 积分:1
-
Delphi 判断字符串是否为日期或时间
Delphi 判断字符串是否为日期或时间,检查用户输入的时间格式是否正确,判断用户输入的是否是时间字符串,这个虽然麻烦些,不过这个例子将问题简单化,有兴趣的参考源码。
- 2022-08-24 16:56:14下载
- 积分:1
-
Delphi 实现的窗体下拉动画效果
Delphi 实现的窗体下拉动画效果,以下拉动画的方式显示一个窗口,关闭时同样有动画效果,只不过是上拉效果,让窗体变生成了,传统的窗口打开方式的确会让人觉得不新奇了,关于下拉和上拉,关键代码先帖上来,完整实例请下载本源码:
begin
AnimateWindow(Self.Handle, 250, AW_VER_NEGATIVE or AW_HIDE);
end;
procedure TForm1.FormShow(Sender: TObject);
begin
AnimateWindow(Self.Handle, 250, AW_VER_POSITIVE);
end;
- 2022-02-22 05:35:01下载
- 积分:1
-
Delphi 打印图形(图片)
Delphi 打印图形,把图片打印出来,通过这个例子,你可以学习到:
strect:Trect;//定义打印输出矩形框的大小
temhi,temwd:integer;
begin
if DIGPrint.execute then
begin
temhi:=imgpic.picture.height;
temwd:=imgpic.picture.width;
while (temhi = printer.pageheight div 2)and
//将图形放大到打印页面的1/2大小
(temwd = printer.pagewidth div 2) do
begin
temhi:=temhi+temhi;
temwd:=temwd+temwd;
end;
with strect do //定义图形在页面上的中心位置输出
begin
left := (printer.pagewidth -temwd) div 2;
top := (printer.pageheight-temhi) div 2;
right := left+temwd;
bottom := top+temhi;
end;
with printer do
begin
begindoc;
canvas.stretchdraw(strect,imgpic.picture.graphic);
enddoc;
end;
end;
- 2022-10-24 23:35:04下载
- 积分:1
-
Delphi 实现TDBGrid组件的斑马线显示
Delphi 实现TDBGrid组件的斑马线显示,也就是TDBGrid的不同行显示不同的颜色,设置不同的背景色,让数据显示更清淅,看上去像斑马线,俗称隔行换色,本例子是结合数据库实现的,若要正常运行,请先附加Database数据库中的SQLSERVER文件,附加后在本示例中修改数据库连接字符串即可。
- 2023-05-29 13:35:03下载
- 积分:1
-
Delphi为程序添加esc退出程序的功能
本源码演示Delphi如何用ESC键退出程序,为程序添加esc退出程序的功能,一般情况下,关闭程序都是通过ALT+f4或者直接点击窗口右上角的叉子关闭,不过我们也可以为程序添加通过键盘按下ESC键来关闭程序,本源码就是演示了此种功能,当用户按下ESC时,窗口即关闭,程序退出。
- 2022-07-21 22:03:47下载
- 积分:1
-
Delphi 演示0~N位数的任意组合
Delphi 数列的排列组合一例,演示0~N位数的任意组合,组合的数字在0~5之间,需要输入1~6整数,排列结果会显示在文本框组件中。要点代码如下:
ssList := TStringList.Create;
try
if (nBase < 1) then
begin
end
else
begin
if (sList.Count = 0) then
begin
for nIdx := 0 to num-1 do
ssList.Add(a[nIdx]);
end
else
begin
for nIdx := 0 to num-1 do
for nSidx := 0 to sList.Count-1 do
if (Pos(a[nIdx], sList.Strings[nSidx]) = 0) then
ssList.Add(a[nIdx]+sList.Strings[nSidx]);
end;
Combine(nBase-1, ssList);
end;
if ssList.Count > 0 then
begin
sList.Clear;
sList.Text := ssList.Text;sslist.Count
end;
finally
ssList.Free;
end;
- 2022-04-29 16:59:03下载
- 积分:1
-
Delphi 提高图像的亮度和对比度
Delphi 提高图像的亮度,每次只能提升一点高度,用着比较麻烦,不过解析图像部分可以借鉴下。以下代码可参考,不过我没发现哪里是调节图片亮度的:
PByte := ImageBmp.scanline[y];
for x:=0 to ImageBmp.Width-1 do
begin
if (PByte[x*3]
- 2023-09-02 06:40:03下载
- 积分:1
-
Delphi 7在数据库中存取图像
Delphi 7在数据库中存取图像,这个示例代码较早,面向的图像格式为BMP,JPG、GIF之类的图片格式未做测试,或许也可以。示例中将4张图片保存到数据库中,然后程序将从数据库中输出这些图片,通过程序的操作,你只需选择对应的图片,即可从数据库中读取出对应的图片。
- 2022-10-12 00:05:03下载
- 积分:1
-
Delphi 模拟Windows “显示桌面”功能
Delphi 模拟Windows “显示桌面”功能,对于功能就不再详述了,单击后,会看到Windows桌面,具体的实现方法也挺简单的,下面几行代码就搞定了:
if IsWindowVisible(h) then
PostMessage(h, WM_SYSCOMMAND, SC_MINIMIZE, 0);
h := GetNextWindow(h, GW_HWNDNEXT);
完整的可编译源码请你下载源码包吧。
- 2023-06-01 06:10:03下载
- 积分:1