delphi一句话帮助之一

时间:2010-03-03 17:32:25  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读: />resourcestring    aa='aaaa';raise Exception.CreateRes(@aa);3.       字符串常量数组的初始化const  constarray:array [0..2] of string=(‘first’,’second’,’third’);4.       结构体初始化type...
  正文:1.       如果想你的程序能够正确处理异常情况的话,请引用SysUtils.pas单元,否则即使程序使用了try。。。except。。。也不能正确捕获异常。

2.       定义常量字符串的一种方式

resourcestring

    aa='aaaa';

raise Exception.CreateRes(@aa);

3.       字符串常量数组的初始化

const  constarray:array [0..2] of string=(‘first’,’second’,’third’);

4.       结构体初始化

type  Tstructinit=record

   A1:integer;

   A2:array [0..2] of integer;

End;

Const m_structinit:Tstructinit=(A1:0;A2:(0,1,2));

5.       多维数组的长度

var  array2:array of array of integer;

setlength(array2,2,2);

6.       使用Create和New开辟的空间都存在于堆中,不能自动释放,建议使用FreeAndNil释放, 参数以及局部变量存在于栈中,自动释放。

7.       SizeOf不适合于对象,返回的总是4;对于固定类型可以正确返回.

8.       Create(nil)需要手工释放,Creat(self)会随着拥有者的释放而释放.

9.       动态改变已定义常量的值

procedure ChangeConst(const Const;var Value;Size:Integer);

begin

  Move((@Value)^,(@Constant)^,Size);

End;

10.   进行删除操作的时候循环使用DownTo,会避免错误.

11.   汉字的Ascii码>128,可以用它来判别是否为汉字

12.   dll编写中,需要使用Sharemem单元来引用BORLANDMM.DLL内存管理.

13.   PostMessage只将消息放到消息队列中,需要排队等待处理。

SendMessage绕过消息队列直接发送到窗口过程,等到消息处理返回值才返回.

14.   鼠标移入移出消息:CM_MOUSEENTER,CM_MOUSELEAVE

15.   关机消息WM_QUERYENDSESSION

16.   可以利用ThintWindow和类的方法ActivateHint来创建浮动窗体.

17.   调出文件属性对话框

uses ShellAPI;

function ShowFileProperties(FileName: String; Wnd: HWND):Boolean;

var

  sfi: TSHELLEXECUTEINFO;

begin

  with sfi do

  begin

    cbSize := SizeOf(sfi);

    lpFile := PAnsiChar(FileName);

    Wnd := Wnd;

    fMask := SEE_MASK_NOCLOSEPROCESS or SEE_MASK_INVOKEIDLIST or SEE_MASK_FLAG_NO_UI;

    lpVerb := PAnsiChar('properties');

    lpIDList := nil;

    lpDirectory := nil;

    nShow := 0;

    hInstApp := 0;

    lpParameters := nil;

    dwHotKey := 0;

    hIcon := 0;

    hkeyClass := 0;

    hProcess := 0;

    lpClass := nil;

  end;

  Result := ShellExecuteEX(@sfi);

end;



procedure TForm1.Button1Click(Sender: TObject);

begin

   ShowFileProperties('c:AA.txt', Handle);

end;

18.   更改系统时间

uses Windows,Dialogs,Forms;

var MyTime:TsystemTime;

begin

  FillChar(MyTime,sizeof(MyTime),#0);

  MyTime.wYear:=2003;

  MyTime.wMonth:=06;

  MyTime.wDay:=01;

  If not SetSystem(MyTime) then

Showmessage(‘Failure’);

"delphi一句话帮助之一"由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Language/Delphi/13027.html


关键字:

关于《delphi一句话帮助之一》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td