-
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 使用tfilestream方式复制文件
Delphi 使用tfilestream方式复制文件,你可参考本源码,学习一下OpenDialog、Tfilestream.Create、showmessage、CopyFile的用法,本实例复制文件,是通过读取文件流,保存文件流的方式复制,并不是使用命令复制文件。
- 2022-01-21 03:12:02下载
- 积分:1
-
Delphi POP3接收邮件-Email客户端例子
Delphi POP3接收邮件-Email源码实例,像是一个邮件客户端那样,设定好邮件服务器相关参数后,可连接到邮件服务器,接收邮件,本例子仅包括邮件接收功能,不能发送邮件哦。使用本程序需要设置的参数:邮件服务器POP3、端口、邮件帐户、密码,连接成功后,邮件列表会显示在“邮件”一栏中,单击任意一个邮件,详细信息会显示在“内容”栏中。
- 2022-12-15 05:00:03下载
- 积分:1
-
Delphi 变速齿轮# 让时间变快减慢
Delphi 变速齿轮# 让时间变快减慢,其实这个似乎是做不到的,只是模拟一下,代码及描述如下:
procedure Speed(count:word); stdcall;
const ExceptionUsed = $03; { 中断号也可以用其它的中断号}
var
IDT : array [0..5] of byte; { 保存中断描述符表}
lpOldGate : dword; {存放旧向量}
begin
asm
push ebx
sidt IDT {读入中断描述符表}
mov ebx, dword ptr [IDT+2]{IDT表基地址}
add ebx, 8*ExceptionUsed {计算中断在中断描述符表中的位置}
cli {关中断}
mov dx, word ptr [ebx+6] {取6,7字节 另外4字节用于门属性和选择子 }
shl edx, 16d {左移16位}
mov dx, word ptr [ebx] {取1,2字节 }
mov [lpOldGate], edx {保存旧的中断门}
mov eax, offset @@Ring0Code {修改向量,指向Ring0级代码段}
mov word ptr [ebx], ax {低16位,保存到1,2字}
shr eax, 16d
mov word ptr [ebx+6], ax {高16位,保存到6,7位}
int ExceptionUsed {发生中断}
mov ebx, dword ptr [IDT+2] {重新定位到中断描述符表中}
add ebx, 8*ExceptionUsed
mov edx, [lpOldGate]
mov word ptr [ebx], dx
- 2023-02-13 04:55:03下载
- 积分:1
-
Delphi 屏蔽键盘 sleep和wake up键
如何屏蔽sleep和wake up键,一个是待机键,一个是唤醒键,屏蔽可有效避免误操作,不过本代码过于简单,屏蔽效果有待测试,核心代码如下:
procedure TForm1.WMPowerBroadcast(var message: TMessage);
begin
message.Result := BROADCAST_QUERY_DENY;
end;
- 2022-06-30 14:51:25下载
- 积分:1
-
取消窗体标题栏的关闭按钮-Delphi代码
Delphi 取消窗体标题栏的关闭按钮,也就是单击窗口右上角的关闭按钮,窗体并不会关闭,让关闭按钮失去了作用,用户可通过单击窗口中的自定义按钮来关闭窗口,这样就相当于取消了窗体标题栏中的关闭按钮。
- 2022-07-04 03:53:29下载
- 积分:1
-
Delphi 实现组件立体阴影、投影效果
Delphi 为组件制作立体效果,实现组件的阴影、投影效果,这种阴影效果不是很细腻,不过大致也说得过去,必竟实现方法简单,原生Delphi方法实现,不依靠三方控件,最终效果请参见测试截图所示。
- 2022-07-03 03:09:14下载
- 积分:1
-
Delphi 鼠标双击TStatusBar时判断是哪一个panels
Delphi 鼠标双击TStatusBar时判断是哪一个panels,这个是把窗口的状态栏分隔,每个隔断中显示不同的内容,用鼠标双击不同的隔断,程序将判断用户点击了哪个隔断,并获取到该栏中的文字内容显示出来。
- 2023-02-09 01:20: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
-
Delphi打开记事本和计算器等外部程序
Delphi打开记事本和计算器等外部程序,应该说是调用外部程序,调用记事本和计处器,单击窗口中的两个按钮,分别会打开Windows自带的记事本和计算器程序。
- 2022-12-21 03:55:04下载
- 积分:1