-
Delphi 实现组件立体阴影、投影效果
Delphi 为组件制作立体效果,实现组件的阴影、投影效果,这种阴影效果不是很细腻,不过大致也说得过去,必竟实现方法简单,原生Delphi方法实现,不依靠三方控件,最终效果请参见测试截图所示。
- 2022-07-03 03:09:14下载
- 积分:1
-
Delphi控制电脑蜂鸣器或扬声器发声音
Delphi控制电脑蜂鸣器或扬声器发声音,有些称之为喇叭,不过测试发现,这个是优先机箱蜂鸣器发出声音,或没装蜂鸣器,则会从音箱中发声音,实现的代码很简单,以下代码即可实现:
procedure TForm1.Button1Click(Sender: TObject);
var
i,j : integer;
begin
for i := 1000 to 2000 do
begin
j := i;
windows.Beep(1000,3000);
end;
end;
- 2022-02-05 03:44:28下载
- 积分:1
-
Delphi在窗口中单击左键弹出菜单
Delphi在窗口中单击左键弹出菜单,在运行的窗体空白外,单击鼠标左键,弹出主菜单,其实和右键 菜单 是一样的原理,希望通过这个简单的例子,了解自定义窗口菜单的实现方法。
- 2023-09-08 18:20: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 演示如何播放GIF动画
Delphi 演示如何播放GIF动画,其实就是在窗口中显示GIF图像,这是一种连续显示类似于动画效果的图像格式,在窗体上只要可以正常显示这种文件,就能实现播放功能,如示例截图所示的效果。
- 2023-05-10 00:50:04下载
- 积分:1
-
Delphi获取电脑CPU硬件型号名称
Delphi获取电脑CPU硬件型号名称,这个可能不准确,我是64位 I5 3470 CPU,获取出来的是统称,不是太准确,可能是我系统的问题。不过这个代码是前几年书中的代码,现在的硬件发展快,也有可能是代码的问题,运行效果如下。
本获取CPU名称是根据注册表的方法获取的。
- 2022-07-06 23:12:47下载
- 积分:1
-
Delphi 读写物理扇区——实模式
Delphi 读写物理扇区——实模式, asm //以下汇编代码中,只有第一参数、第二参数、pFunc的值是需要改变的,其余都是固定的写法
pushad
push ebp //#2,保存ebp
sub esp,$2c //#1,预留2c字节的栈空间
push Int13Reg16 //第一参数,如果没有参数,则不用push
//第二参数,如果没有参数,则不用push
mov edx, pFunc //函数地址
mov ebp,esp //
add ebp,$2c //ebp校正,是作者分析QT_Thunk时发现的
call QT_Thunk
add esp,$2c //#1,释放上面预留的2c字节的栈空间
pop ebp //#2,恢复ebp
mov byte ptr @result,al
popad
end;
- 2022-01-24 18:37:58下载
- 积分:1
-
Delphi 获取全球标准时间
Delphi 通过网络获取全球标准时间,我们知道在Windows中有三个全球标准时间服务器,若你的电脑设置为自动更新时间,则系统自动会从这三台时间服务器中更新时间,你的电脑就不用自己校对时间了。本程序就是演示,用Delphi编写代码,去连接全球时间服务器,校对时间并更新系统时间的例子,你可通过本源码了解一下时间更新的问题。
- 2023-02-03 13:05:04下载
- 积分:1
-
Delphi 如何定义自已的鼠标单击事件
Delphi 如何定义自已的鼠标单击事件,本程序定义了监测鼠标中轮的事件,当用户按下鼠标中轮时,将监测到运作类型,并弹出窗口返回结果。
- 2022-05-13 22:55:23下载
- 积分:1
-
Delphi判断双字节字符的例子
Delphi判断双字节,用法简单,在窗口输入框中输入字符串,单击按钮即可,程序会判断出是否包含有双字节字符,判断方法请看下边的代码段:
s := Edit1.Text;
i := 0;
while i begin
if (ByteType(S,i) mbSingleByte) then
begin
s1 := s1+ copy(s,i,2)+;
i := i+2;
end
else
i:= i+1;
end;
label2.Caption := trim(s1);
- 2022-07-24 15:06:09下载
- 积分:1