delphi 技巧
文章平均质量分 63
qq_18932003
编程爱好者
展开
-
FireDac Locate 方法
Delphi的Locate方法function Locate(const AKeyFields: string; const AKeyValues: Variant;AOptions: TLocateOptions = []): Boolean; override;(1) 搜索一个字段条件时非常简单,只需要输入字段以及第二个参数的数值;(2) 搜索多个字段条件,第二个参数有...原创 2019-11-01 14:22:19 · 539 阅读 · 0 评论 -
Delphi基础-数据类型
枚举类型 Pascal程序不仅用于数值处理,还更广泛地用于处理非数值的数据。例如,性别、月份、星期几、颜色、单位名、学历、职业等。1. 枚举类型的定义格式: type 枚举类型标识符=(标识符1,标识符2,…,标识符n)2. 枚举类型特点枚举元素只能是标识符; 定义枚举类型时列出的所有枚举元素构成了这种枚举类型的值域(取值范围)。例如,下列类型定义是合法的: ty...转载 2020-03-15 17:08:28 · 259 阅读 · 0 评论 -
Delphi 有关的网址
1. 博客园 (张志峰) http://www.cnblogs.com/zhangzhifeng/2. CSDN Delphi论坛 https://bbs.csdn.net/forums/Delphi/recommend麦麦提敏https://www.cnblogs.com/m0488/category/476482.html以前知道的:http://...原创 2019-11-01 08:10:34 · 288 阅读 · 0 评论 -
delphi 快速制作通用LiveUpdate升级程序
很多朋友开发好程序,又需要时间去开发升级模块,比较麻烦,我在这里给出一个通用升级工具的解决方法。首先,我们考虑下对这个升级程序或模块的要求,主要是通用性和便捷性这两点;在这里,我忽然想到了网络游戏的更新程序,发现它非常不错,我们可以像它一样,由主程序调用独立的LiveUpdate程序,对自己进行升级,这样就解决了通用性的问题,具体如何做呢?我们可以利用EXE文件参数的方法来实现,也就是给程序添加运行参数。功能描述:通过参数和配置文件的形式,实现文件更新,采用HTTP协议,可方便的集成到软件中或用于文转载 2021-07-14 07:31:14 · 722 阅读 · 0 评论 -
delphi fmx StringGrid
Firemonkey 之 StringGrid Header 自定义颜色https://www.cnblogs.com/onechen/p/5327732.html原创 2021-06-08 01:18:49 · 687 阅读 · 0 评论 -
Delphi 获取当前鼠标下的控件内容
Delphi 获取当前鼠标下的控件内容主要函数:GetCursorPos;//获取鼠标的位置WindowFromPoint;//获取制定point下的handleGetClassName;//获取类的名字function TForm1.GetEditText: string;var Point: TPoint; Name: array[0..255] of Char; Buffer: array[0..1023] of Char; AHandle: THandle...转载 2020-05-14 08:20:13 · 742 阅读 · 0 评论 -
TNetHTTPCleint提交JSON串
这里,我们拿友盟的推送接口做个测试,它是要求同时提交get参数和post参数,post参数内容为json串,需要引用DateUtils和md5算法单元,代码如下:procedure TForm1.Button3Click(Sender: TObject);varvHttp: TNetHTTPClient;vS, vR: TStringStream;appkey, ams, timestamp, method, url, body, md5: string;begin...转载 2020-05-13 09:05:33 · 593 阅读 · 1 评论 -
delphi 播放GIF动画
delphi 新功能----------------unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls,Vcl.Imaging.GIFImg;//一定要加这个不然编译通不过;...转载 2020-03-26 16:58:43 · 532 阅读 · 0 评论 -
delphi gif png bmp jeg 显示方法
/// <summary>/// 注意不要忘记引用那几个图片单元哦,除了bmp格式不需要引用任何单元,/// 其它图片格式都需要引用对应的图片单元/// png ---> Vcl.Imaging.pngimage/// jpg ---> Vcl.Imaging.jpeg/// gif ---> Vcl.Imaging.GIFImg/// </summ...转载 2020-03-26 16:57:06 · 300 阅读 · 0 评论 -
Delphi中利用StringList对象来记录动态生成的对象
在Delphi中,如果程序需要动态创建大量的对象,那么我们可以利用StringList对象来管理这些动态生成的对象。具体步骤如下:1、创建StringList对象: OBJ := TStringList.Create;2、保存动态生成的对象: OBJ.AddObject('标识','对象名');3、调用生成的对象: (OBJ.Objects[序号/OBJ.IndexOf('标识')] ...原创 2020-03-26 16:41:12 · 474 阅读 · 0 评论 -
Delphi XE增强的RTTI妙用--动态创建包中的窗口类
以前要在运行时创建package中的form类,必须要在form单元文件中这样注册类:Initialization RegisterClass(TForm3);Finalization UnRegisterClass(TForm3);然后在调用模块中,通过FindClass或GetClass函数返回一个TPersistentClass,再通过此类引用创建窗口类: AC...转载 2020-03-26 16:38:28 · 230 阅读 · 0 评论 -
delphi 字符串截取,SubString
字符串截取,SubStringprocedure TForm12.btn1Click(Sender: TObject);var wokao: string;begin wokao := 'abcde_fgdcdc'; ShowMessage(IntToStr(wokao.IndexOf('_')));//5 ShowMessage(wokao.Substring(...转载 2020-03-26 16:30:14 · 1471 阅读 · 0 评论 -
如何将TImage里的图片另存为BMP、JPG、PNG格式的文件
之前我写了如何从数据库里读取图像数据并用Image控件显示,现在讲讲如何另存为图像文件。procedure TForm_ShowPic.N1Click(Sender: TObject);var vPng:TPNGObject; vJpg:TJPEGImage; vBmp:TBitmap; vTmp:string; FType:Integer; vStream:TStr...转载 2020-03-24 13:19:54 · 852 阅读 · 0 评论 -
delphi UniQuery 从来不需要手工一个个写SQL
delphi UniQuery 从来不需要手工一个个写SQL ,Unidac有此功能都多点下产生原创 2020-03-24 12:47:53 · 1051 阅读 · 0 评论 -
Delphi TStringList的用法
TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的。TStringList 常用方法与属性:varList: TStringList;i: Integer;beginList := TStringList.Create;List.Add('Strings1'); {添加}List.Add('Strings2');List.Exchange...原创 2020-03-22 20:59:29 · 348 阅读 · 0 评论 -
delphi MSSQL数据库图片字段,前端如何展示
参考Delphi 文件转换Base64、Base64转换文件https://www.cnblogs.com/FKdelphi/p/12290576.htmlunit Unit1;interfaceuses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classe...原创 2020-03-24 12:58:45 · 320 阅读 · 0 评论 -
Delphi_QPlugins插件
015.Delphi插件之QPlugins,FMX插件窗口摘要:内嵌FMX的插件窗口,效果还是很可以的。退出时,会报错,很诡异啊。 主窗口代码如下 FMX的DLL插件代码如下阅读全文posted @2019-09-11 11:47像一棵海草海草海草 阅读 (52) |评论 (0)编辑014.Delphi插件之QPlugins,MDI窗口摘要:不知道为什么,这个DEMO编译...转载 2020-03-24 12:59:17 · 339 阅读 · 0 评论 -
Delphi接口
07.Delphi接口的生命周期摘要:在Delphi的接口中,是不需要释放的,调用完之后,接口的生命周期就结束了,如下面的例子 调用单元如下阅读全文posted @2019-09-07 19:24像一棵海草海草海草 阅读 (38) |评论 (0)编辑06.Delphi接口的不对等的多重继承摘要:uSayHello代码如下 调用单元如下阅读全文posted @201...转载 2020-03-24 12:59:29 · 131 阅读 · 0 评论 -
CnPack源码模板功能快速添加注释
Delphi通过CnPack源码模板功能,能快速添加注释,非常之好用,使用方法如下图:1.选择CnPack的源码模板专家2.设置Pacal标准过程头3.设置内容如下,并且设置了Ctrl+W的快捷键:{------------------------------------------------------------------------------- 过程名: ...转载 2020-03-21 20:19:37 · 508 阅读 · 0 评论 -
Delphi官方文档
Delphi官方文档http://docwiki.embarcadero.com/RADStudio/Tokyo/en/JSON#JSON_Frameworks原创 2020-03-21 19:39:02 · 1395 阅读 · 0 评论 -
delphi 保存的通用函数
unit MySys;interfaceuses Windows, shlObj, Variants, StdCtrls, ComObj, Classes, SysUtils, Controls,Printers, Messages, mmSystem, ComCtrls, UrlMon, winsock, TLhelp32, Registry,Forms, Graphics, Ini...转载 2019-12-18 16:29:35 · 5468 阅读 · 0 评论 -
DELPHI 字节数转换为KB或MB或GB
function BytesToStr(const i64Size: Int64): string;const i64GB = 1024 * 1024 * 1024; i64MB = 1024 * 1024; i64KB = 1024;begin if i64Size div i64GB > 0 then Result := Format('%.2f GB ', ...原创 2019-12-18 16:10:28 · 528 阅读 · 0 评论 -
DELPHI判断是否联网
判断是否联网在uses中加入WinInetif InternetCheckConnection('http://www.sina.com.cn',1,0) thenbegin showmessage('在线');endelsebegin showmessage('离线');end;或直接用ping后,查看(0% loss)或(100% loss),可知在线或离线...原创 2019-12-18 16:02:01 · 539 阅读 · 0 评论 -
Delphi 访问https /SSL、OpenSSL
访问 Web 网站,最简单用法直接使用 TIdHTTP 控件:例如:AA := IdHTTP1.Get('www.baidu.com.');访问 https 的网站,需要 SSL 库。在 Windows 下,去 https://indy.fulgan.com/SSL/ 下载最新的 SSL 的库。下载后,解压缩,包括两个 dll 文件:ssleay32.dll 和 libeay3...转载 2019-12-13 23:53:38 · 2096 阅读 · 0 评论 -
delphi 如何编写需要启动参数的Delphi程序
有些时候,我们想让我们的程序根据不同的参数启动不同的界面或者,通过主程序才可以调用,这个时候使用启动参数也不是一种可行的方法。1.首先建立一个工程,然后选择Project菜单;2.选择View Source命令;3.这样就打开了工程文件,一般的工程文件的代码如下:复制内容到剪贴板程序代码 程序代码program Project1;uses Forms...原创 2019-12-13 17:33:49 · 576 阅读 · 0 评论 -
将文件大小数值转换成B、KB、MB、GB
//delphi 将文件大小数值转换成B/KB/MB/GBfunction FormatByteSize(const bytes: Longint): string;const B = 1; //byte KB = 1024 * B; //kilobyte MB = 1024 * KB; //megabyte GB = 1024 * MB; //gigab...原创 2019-12-01 21:00:51 · 1066 阅读 · 0 评论 -
DELPHI 把数据库中的数据转换成XML格式
function ReplaceString(AString: string): string;begin Result := StringReplace(AString, '&', '&', [rfReplaceAll]); Result := StringReplace(Result, '>', '>', [rfReplaceAll]);...原创 2019-12-01 20:58:34 · 450 阅读 · 0 评论 -
delphi 几个DataSet数据导出到XML Word Excel TXT HTML的函数
interface uses DB; procedure ExpHTML(DataSet: TDataSet; const AFilePath: string); procedure ExpTXT(DataSet: TDataSet; const AFilePath: string); procedure ExpXLS(DataSet: TDataSet; ...原创 2019-12-01 20:56:03 · 307 阅读 · 0 评论 -
数据库连接池_uDatabasePool
{自定义DataBase类功能:操作数据库函数集by wfj2013.7.4}unit uDatabasePool;interfaceusesSystem.SysUtils, System.DateUtils, {$IF CompilerVersion>=23.0}System.SyncObjs{$ELSE}SyncObjs{$IFEND}...原创 2019-11-30 11:25:21 · 234 阅读 · 0 评论 -
TFDMemTable 数据转成SQL脚本更新
{引用System.JSON;函数名称:DBToJSON(TFDMemTable数据转成SQL脚本更新)参数:DB:TFDMemTable数据集sTable:更新表名sKey:关键字段,写法:ID,Name以逗号区分sNoField:不需要修改或增加的字段: 写法:ID,Sex以逗号区分}function DBToJ...原创 2019-11-30 11:25:28 · 340 阅读 · 0 评论 -
Delphi DataSet和JSON互转函数
一、DataSet转JSON[delphi]view plaincopyprint?//1)数据集转换为JSON字符串: //需USESSystem.JSON; functionDataSetToJson(ADataset:TDataSet):string; //[{"CityId":"18","CityName":"西安"},{"CityId"...原创 2019-11-30 11:25:47 · 498 阅读 · 0 评论 -
自定义htpp类 功能:获取服务端数据,包括:httpGet与httpPost
{自定义htpp类功能:获取服务端数据,包括:httpGet与httpPostby wfj2013.7.4}unit uMyHttp;interfaceusesSystem.SysUtils, System.Classes, IdBaseComponent, IdComponent, IdMultiPartFormData,IdTCPCo...原创 2019-11-30 11:25:56 · 340 阅读 · 0 评论 -
MyHttpFun
unit uMyHttpFun;interfaceusesSystem.SysUtils, System.Classes, Data.Cloud.CloudAPI;function Base64Encode(const convertStr:String):String;function Base64Decode(const convertStr:Str...原创 2019-12-07 12:42:21 · 131 阅读 · 0 评论 -
Delphi 10 Seattle小票打印控件TQ_Printer
https://blog.csdn.net/suyingsoft/article/details/70410139转载 2019-11-24 17:27:55 · 407 阅读 · 0 评论 -
TreeView通过读数据库里的记录创建节点删除保存节点
把菜单项都存在一个数据表里,这个数据表可以有无限级,通过读这个数据表来创建 Treeview 的节点同时包括对节点的增删改表结构create table HRDict(idint identity(1,1),ModuleNamechar(12),ParentIdint为 -...原创 2019-11-21 10:53:28 · 188 阅读 · 0 评论 -
delphi BYTE 转字符串
procedure TForm3.FormCreate(Sender: TObject);beginSelf.Paint;end;function ByteToHex(Src: Byte): String;beginSetLength(Result, 2);asmMOVEDI, [Result]MOVEDI, [E...转载 2019-11-21 10:54:52 · 1229 阅读 · 0 评论 -
我在编程里用到的函数,归在一个类中(未完)
把在编程中遇到的一些代码整理在一个类中,这样可以提高代码的重用性------------------------------------------------------------------------------------------------------------unit PublicFunctionUnit;interfaceuses sysutils,dateu...原创 2019-11-23 19:25:19 · 107 阅读 · 0 评论 -
delphi用RTTI 来改变控件的值
本文链接:https://blog.csdn.net/qi_jianzhou/article/details/652883给panel设字体procedure setPropIsExist(acomponent:Tcomponent;name:string;Avalue:tobject);vartypeinfo:PPropInfo;begintypeInfo := getPro...原创 2019-11-23 19:25:44 · 305 阅读 · 0 评论 -
delphi 运用RTTI机制修改控件的性属
运用RTTI机制修改控件的性属uses TypInfo例:替换控件的数据源procedure TfrmComDj.ReplaceDataSource(OldDataSource, NewDataSource: TDataSource);vari: Integer;begin//循环控件for i := 0 to Self.ComponentCount - 1 do...原创 2019-11-23 19:25:56 · 307 阅读 · 0 评论 -
delphi表单自编号,流水号规则
以前开发的规则是从数据库中以计数形式累计+1,但是出现删除单据后会出现变的错乱。遂又寻找方案,在群里,群主提到了他的编号规则,时间日期,产生一启发。方案1:代码:jbbh.Caption:='SC'+FormatDateTime('yymmddhhmmss',Now())+inttostr(Random(9));/一句话搞定,另或采用函数:代码如下:function zibianhao...原创 2019-11-23 19:25:34 · 480 阅读 · 0 评论