delphi xe6 for android LocationSensor控件默认是优先使用网络定位,对定位精度要求高的应用我们可以修改原码直接指定GPS定位。修改方法:将C:\Program Files\Embarcadero\Studio\14.0\source\rtl\common\System.Android.Sensors.pas拷贝到自己的工程目录里打开System.Android.Sensors.pas找到function TUIAndroidLocationSensor.DoStart: Boolean;,然后按下面的提示修改就可以了。 function TUIAndroidLocationSensor.DoStart: ...
TCanvas对象的方法 方法说明ArcArc(x1,y1,x2,y2,x3,y3,x4,y4 : Integer);Arc方法在椭圆上画一段弧,椭圆由(x1,y1)、(x2,y2) 两点所确定的椭圆决定。弧的起点是椭圆圆周和椭圆中心与(x3,y3)连线的交点。弧矩形终点是椭圆圆周和椭圆中心与(x4,y4)连线的交点以逆时针方向画弧ChordChord(x1,y1,x2,yx,x3,y3,x4,y4 : Integer);Chord方法连接椭圆上两点,椭圆由(x1,y1)、(x2,y3) 两点所确定的矩形决定,(x3,y3)是始点,(x4,y4)是终点Brus...
本文内容严重参考了网上其他牛人的代码,并做了一些修改,使得参数更加简单,结构更清晰,所以就厚着脸皮说是原创。 uses DBGridEhImpExp;procedure TFrm_func.DbGridEhToExcel(ADgEh: TDBGridEh);var ExpClass: TDBGridEhExportclass; Ext: string; FSaveDialog: TSaveDialog;begin try if ADgEh.DataSource.DataSet.IsEmpty then begin Application.MessageBox(PChar(‘没有可导出的数据‘), PChar(‘提示‘), MB...
Delphi按名字调用方法高级解决方案
博客分类:
编程基础DelphiJ#ASPDOS数据结构 按名字调用方法似乎一直以来都是大家比较关注的技术,在论坛上有一个经典的答复: type TProcedure = procedure(Test: string) of object; procedure ExecuteRoutine(Obj: TObject; Name, Param: string); var PMethod: TMethod; AProcedure: TProcedure; begin PMethod.Data := Pointer(Obj); PMethod.Code := Obj.MethodAddre...
Delphi 正则表达式之TPerlRegEx 类的属性与方法(3): Start、Stop//设定搜索范围: Start、Stopvar
reg: TPerlRegEx;
begin
reg := TPerlRegEx.Create(nil); reg.Subject := ‘ababab‘;
reg.RegEx := ‘ab‘;
reg.Replacement := ‘◆‘; reg.Start := 1;
reg.Stop := 2;
while reg.MatchAgain do
begin
reg.Replace;
end;
ShowMessage(reg.Subject); //返回: ◆abab reg.Subject := ‘ababab‘;
reg....
//取name字段的示例 edit1.Text:=ADOquery1.Fields[2].AsString; //取得数据表的第二个字段的值
edit2.Text:=ADOquery1.FieldValues[‘name‘];
edit3.Text:=ADOquery1[‘name‘];
edit4.Text:=ADOquery1.FieldByname(‘name‘).AsString;
//以下是设为永久字段时设置的edit5.Text:=adoquery1name.AsString;
//第六种 edit5.Text:=adoquery1name.value;原文:https://www.cnblogs.com/jijm123/p/10125457.html
Delphi(procedure&procedure .... of object )函数指针与方法指针 .delphiobjectbuttonintegerdelphi中经常见到以下两种定义Type TMouseProc = procedure
(X,Y:integer); TMouseEvent = procedure
(X,Y:integer) of Object;两者样子差不多但实际意义却不一样,TMouseProc只是单一的函数指针类型;TMouseEvent是对象的函数指针,也就是对象/类的函数/方法区别在于类方法存在一个隐藏参数self,也就是说两者形参不一样...
在使用Delphi中的TClientSocket和TServerSocket进行通信编程时,当使用TClientSocket这方的客户端使用TClientSocket.close断开连接并退出程序时,使用TServerSocket这方的服务端有时会报‘’Asynchronous socket error 10053‘这个错误,查阅了这个错误说明:Software caused connection abort.(因软件原因导致连接终止)。这个原因说明很鸡肋,因为你还是无法确定到底是哪个地方出现了问题。实际上出现这个错误很大的原因是没有客...
123456789101112131415161718192021uses superobject; procedure TForm1.FormCreate(Sender: TObject);var aJson: ISuperObject;aSuperArray: TSuperArray; i:Integer;begin {1、赋初值} aJson:=SO(‘{"zoo":"涂磊动物园","animals":[{"name":"猴子","year":"12"},{"name":"老虎","year":"132"}]}‘); {2、读值前,一定要先判断是否存在} if aJson[‘animals‘]<> nil then showmessage( aJson[‘animals‘].As...
delphi fastMM 使用方法简介 在 http://sourceforge.net/projects/fastmm 中可以下载到最新 stable 的 FastMM,当前推荐的是 4.62,主要特点包括:1、彻底实现了 Borland 的内存管理器,可以完全取代现有的内存管理器(“取代”就是第一个 uses FastMM4,that is all ...)2、实现了内存管理器共享机制,Exe 和 Dll 间共享内存管理器不需要任何 Dll 支持3、集成了内存泄漏检测功能4、充分兼容现有的代码、Delphi 旧内存管理器模式...
方法一:delphi中递归算法构建treeView过程:通过读取数据库中table1的数据,来构建一颗树。table1有两个字段:ID,preID,即当前结点标志和父结点标志。所以整个树的表示为父母表示法。本递归算法不难写,但是要注意:程序内部的变量都应使用局部变量!比如当Query是外部变量(函数外定义或者直接通过控件拖拽得来)时就会得到错误的结果。代码如下: unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, ...
方法一:delphi中递归算法构建treeView过程:通过读取数据库中table1的数据,来构建一颗树。table1有两个字段:ID,preID,即当前结点标志和父结点标志。所以整个树的表示为父母表示法。本递归算法不难写,但是要注意:程序内部的变量都应使用局部变量!比如当Query是外部变量(函数外定义或者直接通过控件拖拽得来)时就会得到错误的结果。代码如下: unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, ...
函数功能:当Str不满Len长度时,在Str前自动填充PadStr以补足长度,例子如下:Str:原字符串Len:补多长PadStr:用什么补齐,比如‘0’function PadString(Str: string; Len: Integer;
PadStr: Char): string;begin Result:= StringOfChar(PadStr, Len - Length(Str))
+ Str;end;原文:http://www.cnblogs.com/theonewu/p/3693274.html
Delphi 正则表达式之TPerlRegEx 类的属性与方法(4): Replace// Replacevar
reg: TPerlRegEx;
begin
reg := TPerlRegEx.Create(nil); reg.RegEx := ‘ab‘;
reg.Replacement := ‘◆‘; reg.Subject := ‘ababab‘;
reg.ReplaceAll;
ShowMessage(reg.Subject); //返回: ◆◆◆ reg.Subject := ‘ababab‘;
//下面四行程序, 相当于 reg.ReplaceAll;
while reg.MatchAgain do
begin
reg.Replace;
end; Sh...
1.方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,...