易截截图软件、单文件、免安装、纯绿色、仅160KB

delphi类的相互引用

在写c++的接口时可以将两个相互引用的类放在两个.h文件中,然后将这个接口翻译到delphi时,放在两个文件里就不可能了。只能放在同一个unit中。并且要将这两个类都放在同一个type下面进行定义,当前面一个类要使用后面一个类时,需要在前面一个类的前面放置一个前置声明,并且前置声明只能是IVariantMap = class;这种格式而不能是IVariantMap = class(TObject);形式。
unit XXX_variant;
interface
use XXX,XXX;
type
IVariantMap = class;
IVariantArray = class;
IVariant = class(CBaseSerial)
public
function SetMap(val: IVariantMap): Boolean; virtual; stdcall; abstract;
function SetArray(val: IVariantArray): Boolean; virtual; stdcall; abstract;
// XXXX
end;
IVariantArray = class
public
function GetElement(index: Cardinal): IVariant; virtual; stdcall; abstract;
//XXXX
end;
IVariantMap = class
public
function GetValue(const name: PChar): IVariant; virtual; stdcall; abstract;
//XXXX
end;


相关文档:

Delphi时间和Java时间的转换类。

这样一来,Delphi使用Webservice和JAVA通讯时,可以将DELPHI的时间直接传给JAVA。从而免去了时间字符串parse之间的消耗,提高的程序效率。
Delphi时间实质就是double类型,整数部分表示天,小数部分表示当天时间,每毫秒为1/86400000。考虑到时区的转换后,JAVA和DELPHI时间之间的转换类如下:
import java.util.Calendar ......

VC中调用Delphi的DLL中的回调函数例子

//Delphi部分  
 //回调函数定义
type TOnMyCallBack = procedure(data:pchar; id:Integer);stdcall;  
 //DLL中的导出函数声明
procedure StartCall(param:   TOnMyCallBack(data:pchar; id:Integer);stdcall;  
begin
  ...  
  ...  
end;  
&n ......

delphi中关于字符串数组的一个小BUG

看如下代码:
var
   buffer:array [0..6] of char;
begin
    buffer:='delphi';
end;
编译通过
再看如下代码:
var
   buffer:array [1..7] of char;
begin
    buffer:='delphi';
end;
编译错误:
Incompatible types: 'Array' and 'String'
真不知道 ......

晕,delphi 7 有两个版本的 SelectDirectory

以前用过delphi 2007的这个函数的,参数超多,现在的公司用D7,结果网上一查这个函数,用不成了,原来我用错了函数
unit QDialogs;
{$IFDEF LINUX}
function SelectDirectory(const Caption, Root: WideString;
  var Directory: WideString; ShowHidden: Boolean = False): Boolean;
{$ENDIF}
{$IFDEF MSWINDOW ......

常用的BCB & Delphi 函数

常用的BCB & Delphi 函数
关键字:BCB,delphi,函数
作者:鲁小班    更新:2003-08-12    浏览:12686
翻译的不好,请见谅。
翻译:鲁小班
文件: ActnList
CreateAction 函数 创建一个指定类型的Action,显示在action list editor中。
EnumRegisteredAction 过程 枚举已经注册的 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号