-
一个相当不错的Delphi TreeView树控菜单
一个Delphi编写的相当不错的TreeView树控菜单,类似于Windows资源管理器中的树状菜单。
ParentFolder: IShellFolder; // 节点对应的文件夹的父文件夹的IShellFolder接口
Pidl, FullPidl: PItemIDList;// 节点对应的文件夹的相对和绝对项目标识符列表
HasExpanded: Boolean; // 节点是否展开
通过这个树形菜单制作实例,你可以学习到几个对项目标识符进行操作的函数,同时还有将二进制表示的项目标识符列表转换成有可识的项目名,获得每个文件夹在系统中的图标,获得系统的图标列表,生成文件夹管理树等。
- 2022-02-01 01:44:12下载
- 积分:1
-
Delphi实现TdxDBTreeView节点全部展开或收拢
本源码演示如何实现Delphi TdxDBTreeView节点全部展开或收拢功能,也就是大家熟悉的树形菜单节点的折叠或展开功能,在平时的使用中,树形节点是很常用的一个菜单功能,本例子的树形菜单节点功能读取自数据库,因此在测试前请连接好数据库。
//单击全部展开按钮
procedure TForm1.Button1Click(Sender: TObject);
begin
dxDBTreeView1.FullExpand;
end;
//单击全部收拢按钮
procedure TForm1.Button2Click(Sender: TObject);
begin
dxDBTreeView1.FullCollapse;
end;
- 2022-01-26 05:17:01下载
- 积分:1
-
内存使用状态Delphi 探测并显示
Delphi获取内存的使用状态并显示信息,这里是使用GlobalMemoryStatus来实现,有的是使用GetSystemInfo来获龋本程序可显示内存大小和可用内存,并显示进度条。不过我这台电脑是16G内存的Windows7 64位系统,程序可能没认出啊,下面是识别内存可用量的大小,仅供参考:
memo_status.dwLength := sizeof(memo_status);
GlobalMemoryStatus(memo_status);
Gauge2.Progress := (round((100*(memo_status.dwAvailPhys
/ memo_status.dwTotalPhys))));
label1.Caption := inttostr(memo_status.dwAvailPhys);
label2.Caption := inttostr(memo_status.dwTotalPhys);
- 2022-02-03 06:55:31下载
- 积分: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 当鼠标和键盘在一定时间没有动作时关闭程序
Delphi 当鼠标和键盘在一定时间没有动作时关闭程序,这是一个智能化程序,类似于屏保,当一定时间没有操作时,会关闭软件,运行的技术也不很高深,有兴趣的可下载源代码研究学习。
- 2022-10-11 13:05:03下载
- 积分:1
-
Delphi 获取拖动到窗体中的文件的路径
Delphi 获取拖动到窗体中的文件的路径,这实际上是一个拖放打开文件的例子,这只不是其中的一个步骤,拖放打开是把文件拖放到本窗口中,直接打开该文件,而拖放得到路径是把文件的路径显示在窗口中,和打开文件其实难易程序是一样的。拖放后获取文件路径,代码如下:
procedure TForm1.FileIsDropped(var Msg: TMessage);
var
NumFiles : longint;
i : longint;
FName : array[0..255] of char;
begin
SetForegroundWindow(Handle);
NumFiles := DragQueryFile(Msg.WParam,$FFFFFFFF,nil,0);
for i := 0 to (NumFiles - 1) do
begin
DragQueryFile(Msg.WParam,i,FName,sizeof(FName));
Memo1.Lines.Add(FName);
end;
end;
- 2022-09-25 15:45:03下载
- 积分:1
-
Delphi 获取服务器时间 更新本机时间
Delphi 通过时间服务器更新时间,包括了两个功能:1、获取服务器时间,2、更新本机时间。通过时间服务器,可一键自动更新日期时间,不过本实例连接的服务器已经失效了,程序不能连接,会假死,测试时候要注意。
- 2022-01-24 08:49: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
-
Delphi 【Frame3D】函数的应用实例-三维框源码
Delphi 函数【Frame3D】的应用,该函数用于在画布上绘制一个3维框图:
implementation
{$R *.dfm}
procedure TFrmFrame3D.FormCreate(Sender: TObject);
begin
Bc:=Rect(80,50,100,200);
end;
procedure TFrmFrame3D.FormPaint(Sender: TObject);
begin
Frame3D(canvas,Bc,clblack,clAppWorkSpace,2);
end;
procedure TFrmFrame3D.Button1Click(Sender: TObject);
begin
Bc:=Rect(strtoint(Edx.text),strtoint(Edy.Text),strtoint(EdH.Text),strtoint(EdW.Text));
Frame3D(canvas,Bc,clblack,clAppWorkSpace,2);
end;
- 2022-06-16 08:51:26下载
- 积分:1
-
Delphi实现简单TCP服务器范例源码
“欢迎连接到简单TCP服务器”,这是本代码编译成功,运行程序后连接成功后的第一个提示。Delphi编写设计一个基本的CS结构的TCP服务器,客户端代码同样完整,指定主机IP、端口后,就可连接该服务器,客户端和服务端代码都要编译才能运行,先运行服务端并设置好,再启动客户端,然后进行消息发送和接收。
- 2022-01-26 07:51:08下载
- 积分:1