-
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 模拟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 演示如何播放GIF动画
Delphi 演示如何播放GIF动画,其实就是在窗口中显示GIF图像,这是一种连续显示类似于动画效果的图像格式,在窗体上只要可以正常显示这种文件,就能实现播放功能,如示例截图所示的效果。
- 2023-05-10 00:50:04下载
- 积分:1
-
Delphi 使用tfilestream方式复制文件
Delphi 使用tfilestream方式复制文件,你可参考本源码,学习一下OpenDialog、Tfilestream.Create、showmessage、CopyFile的用法,本实例复制文件,是通过读取文件流,保存文件流的方式复制,并不是使用命令复制文件。
- 2022-01-21 03:12:02下载
- 积分:1
-
Delphi 使窗体始终在最前面
Delphi 使窗体始终在最前面,不几行代码实现的置顶窗口,大家对这种窗口相信都不会太陌生,不被其它的窗口遮挡,显示在最前面,典型的应用像一些视频播放器的播放窗口,在播放视频时可设置显示在最顶端,你可以边工作边看电影啦!详细实现请参考源代码。
- 2022-03-14 11:14:48下载
- 积分:1
-
Delphi 目录操作范例:改变当前目录
Delphi 目录操作范例:改变当前目录,先获取当前的目录路径,然后改变这个目录路径,文件当前在此目录,那么如何修改文件路径呢?
procedure TForm1.Button1Click(Sender: TObject);
begin
try
chdir(Edit2.Text);
finally
getdir(0,result);
Edit2.Text := result;
end;
end;
源代码仅供参考。
- 2022-11-19 16:05:03下载
- 积分:1
-
Windows 剪贴板高级编程-Delphi源码实例
Windows 剪贴板高级编程-Delphi源码实例,其实也不是什么高级编程,挺基础的剪贴板应用。学习如何在Delphi环境下读取Windows剪贴板的内容。在编写一些系统辅助类的软件中,可使用到这些小技巧。以下代码:将剪贴板内容读取出来,在代码的执行放入一个按钮事件中:
procedure TForm1.Button2Click(Sender: TObject);
var
DataRec: TDataRecord;
Data: THandle;
PData: Pointer;
begin
Data := Clipboard.GetAsHandle(CF_CUSTOMFORMAT);
if Data = 0 then Exit;
PData := GlobalLock(Data);
Move(PData^, DataRec, GlobalSize(Data));
GlobalUnlock(Data);
with DataRec do
ShowMessage(Name + #13#10 + Sex + #13#10 + Hobby);
end;
- 2022-04-22 08:40:48下载
- 积分:1
-
Delphi GetCurrentDirectory得到系统当前目录
得到系统当前目录,Delphi 得到系统当前目录,这里使用了内置的GetCurrentDirectory函数来实现,比较方便,也比较简单。获取到系统目录后,是通过窗口的标题栏显示目录路径信息,在演示截图上请看窗口的标题栏,显示有程序当前所在的路径。关于GetCurrentDirectory用法,请参见以下两行代码:
GetCurrentDirectory(255,dir);//获得当前目录
form1.Caption:=dir;
- 2022-07-07 13:11:54下载
- 积分:1
-
方格变换的Delphi图像显示,类似于马赛克
方格变换的Delphi图像显示,类似于那种动态的马赛克效果,电视上经常见到这种图像切换的效果,当然网页上的一些焦点图切换也会常见到这种图像转场的过渡效果,相比直来直去的切换,增加了一些视觉效果,不至于那么单调。
本效果适用的图像格式了BMP位图,其它图片格式未做测试。
- 2022-07-18 02:39:41下载
- 积分:1
-
Delphi 定义鼠标ANI动画光标
ANI动画鼠标,为自己的鼠标定制了一个带笑脸动画的光标,类似于定义鼠标的样式,定义动画光标将改变鼠标默认的样式,这样定义的动画光标格式为ANI文件。
屏幕截图抓不到动画光标,这是神马情况?
- 2022-10-08 15:50:03下载
- 积分:1