-
窗口中的弹出式右键菜单-delphi源码
窗口中的弹出式右键菜单-delphi PopupMenu源码,
procedure TForm1.Button1Click(Sender: TObject);
var
Poin:TPoint;
begin
Poin := Point(Button1.Left,Button1.Top+Button1.Height);
Poin := ClientToScreen(Poin);
PopupMenu1.Popup(Poin.X,Poin.Y);
end;
- 2022-07-24 15:12:59下载
- 积分:1
-
Delphi时间换算 换算秒数为时间格式
Delphi时间换算 换算秒数为时间格式,其实这种换算还是挺简单的吧,TimeToStr(I/86400);就可以算出。在运行的程序窗口中,输入任意秒数(必需输入数字)后,点击确定按钮,即可显示出时间格式的秒数了。具体的代码这里不帖了,需要的请下载完整源码吧,运行效果图如截图所示。
- 2022-07-17 19:50:24下载
- 积分:1
-
Delphi 将TColor换算成RGB
Delphi 将TColor换算成RGB,将一种颜色按照RGB颜色分量的形式分离出来,显示各自的颜色值,类似于一个拾色器的功能,你可从列表中选择任意一种颜色,然后查看获取到的颜色分量的值,如示例截图所示。
- 2023-07-28 04:55:03下载
- 积分:1
-
Delphi7 向XML中添加RTTI信息
Delphi7.0 向XML中添加RTTI信息,这个例子挺简单,希望大家喜欢,面向Delphi新手的,高手请绕道哦,下面是本例Delphi向XML中添加RTTI信息的关键性代码:
procedure TForm1.ComponentToDOM(iNode: IXmlNode; Comp: TPersistent);
var
nProps, i: Integer;
PropList: PPropList;
Value: Variant;
newNode: IXmlNode;
begin
nProps := GetTypeData (Comp.ClassInfo)^.PropCount;
GetMem (PropList, nProps * SizeOf(Pointer));
try
GetPropInfos (Comp.ClassInfo, PropList);
for i := 0 to nProps - 1 do
begin
Value := GetPropValue (Comp, PropList [i].Name);
NewNode := iNode.AddChild(PropList [i].Name);
NewNode.Text := Value;
if (PropList [i].PropType^.Kind = tkClass) and (Value 0) then
if TObject (Integer(Value)) is TComponent then
NewNode.Text := TComponent (Integer(Value)).Name
else
ComponentToDOM (newNode, TObject (Integer(Value)) as TPersistent);
end;
finally
FreeMem (PropList);
end;
end;
- 2022-01-26 03:00:57下载
- 积分:1
-
返回底数的任何次幂-Delphi方法
Delphi 返回底数的任何次幂,本演示求2的4次幂、3的3次幂,求解过程如下:
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Text := FloatToStr(Power(2,4));
Edit2.Text := FloatToStr(Power(3,3));
end;
以上代码定义在按钮事件中,当用户单击按钮后激活。
- 2022-03-01 01:34:29下载
- 积分: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
-
获取windows System目录路径-Delphi示例
Delphi获取windows System目录路径,这个比较简单,觉得没啥用,只是可以练习一下GetSystemDirectory函数如何使用,下面分享出核心的代码,完整代码需要您下载哦:
begin
GetMem(SysDir,255);
GetSystemDirectory(SysDir,255);
Edit1.Text := SysDir;
end;
- 2022-03-18 16:21:27下载
- 积分:1
-
Delphi 获得汉字区位码的源码
Delphi 获得汉字区位码的源码,输入指定汉字,将得到这些汉字的区位码,关键代码请参考以下的源码:
procedure TForm1.Button1Click(Sender: TObject);
var
str:string;
hi,lo:integer;
begin
str:=trim(edit2.Text);
hi:=byte(str[1])-$a0;
lo:=byte(str[2])-$a0;
edit1.Text:=inttostr(hi)+inttostr(lo);
end;
- 2022-02-21 00:07:08下载
- 积分:1
-
Delphi 实现图像热点功能
Delphi 实现图像热点功能,实现一张图片上不同形状区域的热点,定义椭圆形、四边形、三角形的区域变量的热点,相关代码如下:
var
thepoint:array [1..8] of tpoint;//存储多边形顶点坐标
count:integer;
pointnum:array [1..2] of integer;
begin
//四边形顶点坐标,首末点封闭
thepoint[1]:=point(135,99);
thepoint[2]:=point(105,183);
thepoint[3]:=point(129,201);
thepoint[4]:=point(188,92);
thepoint[5]:=point(135,99);
count:=5;//四边形顶点数目,首末点为一点
fourE_rgn:=CreatePolygonRgn(thepoint,count,WINDING);//生成四边形区域
elli_rgn:=CreateEllipticRgn(64,221,231,263);// 生成椭圆形区域
//第一个三角形顶点坐标
thepoint[1]:=point(118,67);
thepoint[2]:=point(32,28);
thepoint[3]:=point(17,90);
thepoint[4]:=point(118,67);
//第二个三角形顶点坐标
thepoint[5]:=point(155,44);
thepoint[6]:=point(202,91);
thepoint[7]:=point(277,44);
thepoint[8]:=point(155,44);
pointnum[1]:=4;//第一个三角形顶点数目
pointnum[2]:=4;//第二个三角形顶点数目
count:=2;//三角形数目
//生成由两个三角形构成的三角形区域
tri_rgn:=CreatePolyPolygonRgn(thepoint,pointnum,count,WINDING);
end;
- 2022-01-26 08:02:50下载
- 积分:1
-
在输入时按回车移动光标到一下文本框-Delphi示例
Delphi实现回车移动焦点的功能,当用户在输入时按回车键,将移动光标到一下文本框,这个功能我觉得可很好的提升软件的操作体验,为实现快捷输入近了一步。具体代码请参考如下:
begin
if Key = 13 then
begin
keybd_event(VK_TAB,0,KEYEVENTF_EXTENDEDKEY,0); //按下
keybd_event(VK_TAB,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0); //弹起
end;
end;
- 2022-08-21 20:36:32下载
- 积分:1