-
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 快速查询文件
Delphi 快速查询文件,比较老的代码,搜索文件的地址需要手工输入哦,查询的结果会显示在空白处。返回查询的代码如下:
List := TStringList.Create;//创建字符传列表
try
spec := ExtractFileName(filespec);//返回指定文件名
RFindFile(ExtractFilePath(filespec));//返回指定路径
Result := list;//函数返回值是List;
- 2022-03-19 10:17:26下载
- 积分: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 使用tfilestream方式复制文件
Delphi 使用tfilestream方式复制文件,你可参考本源码,学习一下OpenDialog、Tfilestream.Create、showmessage、CopyFile的用法,本实例复制文件,是通过读取文件流,保存文件流的方式复制,并不是使用命令复制文件。
- 2022-01-21 03:12:02下载
- 积分:1
-
Visual C# 调用声音控制对话框
Visual C# 调用声音控制对话框,在windows Xp下表现挺好,在Windows7有些问题,调用的面板并不会显示出来,这是为何呢?windows调用 声音对话框的实例 ,基于Delphi7源码实现。
- 2022-03-10 20:40:03下载
- 积分:1
-
Delphi 定制自己的幽灵程序
Delphi 定制自己的幽灵程序,这个程序在Windows托盘处显示图标,而且退出后在进程中仍会运行,像幽灵一样,托盘处可右键弹出菜单,本程序主要是图标和菜单的一些操作,属于UI界面的范畴吧,这是我个人认为的,部分代码摘录:
NormalIcon,DisabledIcon:TIcon;
//正常和失效两种情况下的图标
Status:Boolean;
//标志"允许使用"还是"禁止使用"
procedure InstallIcon;
procedure ChangeIcon(s:Boolean);
procedure UnInstallIcon;
procedure IconOnClick(var message:TMessage); message MI_ICONEVENT;
//捕捉自定义消息MI_ICONEVENT的过程IconOnClick的声明
- 2023-04-07 01:50:03下载
- 积分:1
-
Delphi 实现TDBGrid组件的斑马线显示
Delphi 实现TDBGrid组件的斑马线显示,也就是TDBGrid的不同行显示不同的颜色,设置不同的背景色,让数据显示更清淅,看上去像斑马线,俗称隔行换色,本例子是结合数据库实现的,若要正常运行,请先附加Database数据库中的SQLSERVER文件,附加后在本示例中修改数据库连接字符串即可。
- 2023-05-29 13:35:03下载
- 积分:1
-
Delphi Canvas.Brush为窗体绘制渐变背景
Delphi 为窗体绘制渐变背景,这里使用了Delphi中的Canvas.Brush.Color来实现窗口背景的渐变色,不错吧?如示例图的左右渐变效果,实现的代码:
for i:=0 to self.Width-1 do
begin
c1:=GetRValue(StartColor)+Trunc(i*(GetRValue(EndColor)-GetRValue(StartColor))/(self.Width-1));
c2:=GetGValue(StartColor)+Trunc(i*(GetGValue(EndColor)-GetGValue(StartColor))/(self.Width-1));
c3:=GetBValue(StartColor)+Trunc(i*(GetBValue(EndColor)-GetBValue(StartColor))/(self.Width-1));
Canvas.Brush.Color:=RGB(c1,c2,c3);
//每次画矩形的画刷颜色
Dct:=Rect(i,0,i+1,self.Height);
//每次刷绘的矩形区域
Canvas.FillRect(Dct);
//填充颜色
end;
- 2022-05-24 21:26:59下载
- 积分:1
-
轻型网络聊天Delphi程序-源码
轻型网络聊天Delphi程序-源码,类似聊天室, 很简单,这是个多年前的网络编程例子,聊天过程中显示对方的IP,和当前好友姓名,还支持删除聊天记录。用户注册时,可对注册信息进行初始验证,比如用户名是否存在、姓名和IP地址不能空等,有一些技巧对Delphi打基础有帮助。
- 2023-05-16 10:20:03下载
- 积分:1
-
Delphi 创建独立的子窗体 脱离父窗口但可通过父窗口关闭
Delphi 创建多个独立的子窗体 脱离父窗口而显示,但是却可通过父窗口关闭打开的所有子窗口,就是通过主窗口内的关闭按钮,关闭独立于父窗口之外的子窗口,这个功能我感觉很实用吧,源代码中也包括了多个子窗口的代码,父子窗口之间是如何关联起来的呢,请参见这个源代码实例 。
- 2022-01-25 17:06:08下载
- 积分:1