-
Delphi 单击StringGrid列进行排序
Delphi 单击StringGrid列进行排序,StringGrid行的任意列单击,就会重新排序一次,排序规则可以自己定义,这种排序功能可有效提升StringGrid显示数据的易用性,增强其功能,提升用户体验,本例子源代码相当简单,对学习者也有很好的帮助作用。参见以下代码:
begin
if Button = mbRight then Exit;
TStringGrid(Sender).MouseToCell(X, Y, vCol, vRow);
if (vRow < 0) or (vRow >= TStringGrid(Sender).FixedRows) then Exit;
StringGridRowSort(TStringGrid(Sender), vCol, vOldCol = vCol);
if vOldCol = vCol then
vOldCol := - vOldCol
else
vOldCol := vCol;
end;
- 2022-05-29 23:30:47下载
- 积分:1
-
Delphi 使用ESC键停止循环
Delphi 使用ESC键停止循环,示例演示程序,单击按钮开始循环,按下键盘ESC键,将停止循环。程序核心代码:
begin
for i:= 0 to 9999999 do
begin
Edit1.Text := IntToStr(i);
//允许应用程序在循环中可以处理消息
Application.ProcessMessages;
//用是 ESC 键放弁循环
if GetKeyState(VK_ESCAPE) and 128 = 128 then
Break;
end;
end;
- 2022-03-24 17:07:24下载
- 积分: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
-
Delphi7利用鼠标绘制矩形焦点的源码
本源代码主要演示Delphi7利用鼠标绘制矩形焦点,画出虚线框矩形,按住鼠标左键抖动矩形区域,即可显示虚线矩形框,可应用于需要拖动选择对象时作为选区使用,在Delphi中,这个功能使用Canvas实现:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if IsDraw then
begin
if Count >1 then
DrawFocusRect(Canvas.Handle,FocuRect);
FocuRect.Right := X;
FocuRect.Bottom := Y;
DrawFocusRect(Canvas.Handle,FocuRect);
Inc(Count);
IsEndDraw := True;
end;
end;
- 2023-02-14 21:35:04下载
- 积分:1
-
Delphi实现RGB色环的绘制源码 XE10.2+WIN764
Delphi实现RGB色环的绘制源码 XE10.2+WIN764,鼠标移动时提取颜色RGB的值,可以设置中心圆是否是透明的,RGB色环的代码绘制,传入图片的大小,扣出中心的黑色圆,输入图片与中心圆的半径。这个色环的颜色十分精细,过渡十分自然,本例子代码的参考价值还是挺大的。
- 2022-06-27 11:06:18下载
- 积分:1
-
轻型网络聊天Delphi程序-源码
轻型网络聊天Delphi程序-源码,类似聊天室, 很简单,这是个多年前的网络编程例子,聊天过程中显示对方的IP,和当前好友姓名,还支持删除聊天记录。用户注册时,可对注册信息进行初始验证,比如用户名是否存在、姓名和IP地址不能空等,有一些技巧对Delphi打基础有帮助。
- 2023-05-16 10:20:03下载
- 积分:1
-
Delphi 编写的VOD视频点播及后台管理系统
Delphi 编写的VOD视频点播及后台管理系统,这套系统既是一套多媒体系统,也是一套数据库系统,VOD部分的功能有:KTV管理系统,编号点歌、轻音乐、拼音点歌、迪士高、明星点歌、DVD影院、播放列表、歌曲管理等。
- 2022-01-24 15:29:37下载
- 积分:1
-
Delphi 在程序运行过程中动态添加菜单
Delphi创建动态菜单,在程序运行过程中动态添加菜单,点击“添加菜单”按钮,会在菜单栏中增加一个“编辑”菜单项,预设中每次添加的菜单项都是“编辑”,这也是为了验证不要添加重复的菜单项,代码中的判断是一种方法,另外也可以通过菜单项的Caption属性来判断,不过之前最好设置AutoHotkeys和AutoLineReduction为maManual。在以下创建菜单项的代码中:
self.MainMenu1.AutoHotkeys:=maManual;
self.MainMenu1.AutoLineReduction:=maManual;
通过设置这两个属性可以禁止程序自动为菜单生成热键,否则程序会自动在菜单的Caption属性中加入热键,并且会修改Caption属性的值,给通过Caption属性判断菜单项带来麻烦。
- 2022-03-22 14:48:49下载
- 积分:1
-
Delphi 在窗体上显示超级连接效果
Delphi7.0实现超级连接效果,在窗体上显示超级链接,这个似乎比较简单了,在网页上这是基本的功能,不过如何把一个超链接显示在窗口中,和网页上有些区别,通过这个例子你将学会如何在窗体上实现链接的显示,以及多种链接状态的自定义功能。
- 2023-03-23 16:40:03下载
- 积分:1
-
Delphi 替换一个键盘按钮
Delphi 替换一个键盘按钮,将数字1改为a。将键盘所代表的键位重新定义并判断,得到一个不同的键位值。
- 2023-01-10 10:50:03下载
- 积分:1