麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 編程 > Delphi > 正文

delphi一句話幫助

2019-11-18 18:35:23
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
1.       如果想你的程序能夠正確處理異常情況的話,請(qǐng)引用SysUtils.pas單元,否則即使程序使用了try。。。except。。。也不能正確捕獲異常。
2.       定義常量字符串的一種方式
resourcestring
    aa='aaaa';
raise Exception.CreateRes(@aa);
3.       字符串常量數(shù)組的初始化
const  constarray:array [0..2] of string=(‘first’,’second’,’third’);
4.       結(jié)構(gòu)體初始化
type  Tstructinit=record
   A1:integer;
   A2:array [0..2] of integer;
End;
Const m_structinit:Tstructinit=(A1:0;A2:(0,1,2));
5.       多維數(shù)組的長(zhǎng)度
var  array2:array of array of integer;
setlength(array2,2,2);
6.       使用Create和New開辟的空間都存在于堆中,不能自動(dòng)釋放,建議使用FreeAndNil釋放, 參數(shù)以及局部變量存在于棧中,自動(dòng)釋放。
7.       SizeOf不適合于對(duì)象,返回的總是4;對(duì)于固定類型可以正確返回.
8.       Create(nil)需要手工釋放,Creat(self)會(huì)隨著擁有者的釋放而釋放.
9.       動(dòng)態(tài)改變已定義常量的值
PRocedure ChangeConst(const Const;var Value;Size:Integer);
begin
  Move((@Value)^,(@Constant)^,Size);
End;
10.   進(jìn)行刪除操作的時(shí)候循環(huán)使用DownTo,會(huì)避免錯(cuò)誤.
11.   漢字的Ascii碼>128,可以用它來(lái)判別是否為漢字
12.   dll編寫中,需要使用Sharemem單元來(lái)引用BORLANDMM.DLL內(nèi)存管理.
13.   PostMessage只將消息放到消息隊(duì)列中,需要排隊(duì)等待處理。
SendMessage繞過(guò)消息隊(duì)列直接發(fā)送到窗口過(guò)程,等到消息處理返回值才返回.
14.   鼠標(biāo)移入移出消息:CM_MOUSEENTER,CM_MOUSELEAVE
15.   關(guān)機(jī)消息WM_QUERYENDsession
16.   可以利用ThintWindow和類的方法ActivateHint來(lái)創(chuàng)建浮動(dòng)窗體.
17.   調(diào)出文件屬性對(duì)話框
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.   更改系統(tǒng)時(shí)間
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’);
   End;
19.   復(fù)制文件夾Xcopy
.   procedure Xcopy(SourceDir,DestinationDir:String);
    var
      Search : TSearchRec;
      Rec    : Word;
Begin
      SourceDir := SourceDir + '/';
      Rec := FindFirst(SourceDir + '*.*', faAnyFile, Search);
      While Rec = 0 Do
      Begin
        If Search.Name[1] <> '.' Then
        Begin
          If (Search.Attr And faDirectory) = faDirectory Then
          Begin
            Windows.CreateDirectory(PChar(DestinationDir + '/' + Search.Name), nil);
            FileSetAttr(DestinationDir + '/' + Search.Name, FileGetAttr(SourceDir + '/' + Search.Name));
            X_Copy(SourceDir + '/' + Search.Name, DestinationDir + '/' + Search.Name);
          end
          Else
          Begin
            CopyFile(PChar(SourceDir + '/' + Search.Name),PChar(DestinationDir + '/' + Search.Name), True);
            FileSetAttr(DestinationDir + '/' + Search.Name, FileGetAttr(SourceDir + '/' + Search.Name));
            application.ProcessMessages;
          end;
        end;
        Rec := FindNext(Search);
      end;
      FindClose(Search);
end;
20.   繪制透明位圖
   procedure DrawTrans(DestCanvas: TCanvas; X,Y: smallint; SrcBitmap: TBitmap; AColor, BackColor: TColor);
var  ANDBitmap, ORBitmap: TBitmap;
         CM: TCopyMode;
         Src: TRect;
begin
      ANDBitmap:= NIL;
      ORBitmap:=  NIL;
      try
        ANDBitmap:= TBitmap.Create;
        ORBitmap:= TBitmap.Create;
        Src  := Bounds(0,0, SrcBitmap.Width, SrcBitmap.Height);
        with ORBitmap do begin
          Width:= SrcBitmap.Width;
          Height:= SrcBitmap.Height;
          Canvas.Brush.Color := clBlack;
          Canvas.CopyMode := cmSrcCopy;
          Canvas.BrushCopy(Src, SrcBitmap, Src, AColor);
        end;
        with ANDBitmap do begin
          Width:= SrcBitmap.Width;
          Height:= SrcBitmap.Height;
         Canvas.Brush.Color := BackColor;
         Canvas.CopyMode := cmSrcInvert;
         Canvas.BrushCopy(Src, SrcBitmap, Src, AColor);
       end;
       with DestCanvas do begin
         CM := CopyMode;
         CopyMode := cmSrcAnd;
         Draw(X,Y, ANDBitmap);
         CopyMode := cmSrcPaint;
         Draw(X,Y, ORBitmap);
         CopyMode := CM;
       end;
     finally
       ANDBitmap.Free;
       ORBitmap.Free;
     end;
end;
 
procedure TForm1.Button4Click(Sender: TObject);
begin
    DrawTrans(Image1.Canvas, 0,0, Image2.Picture.Bitmap, clBlack, clSilver);
end;
21.   獲取CPU速度
  function GetCpuSpeed: Extended;
var
    t, mhi, mlo, nhi, nlo: dword;
    shr32 : comp;
begin
    shr32 := 65536;
    shr32 := shr32 * 65536;
    t := GetTickCount;
    while t = GetTickCount do ;
      asm
      DB 0FH,031H // rdtsc
      mov mhi,edx
      mov mlo,eax
    end;
    while GetTickCount < (t + 1000) do ;
      asm
      DB 0FH,031H // rdtsc
      mov nhi,edx
      mov nlo,eax
    end;
    Result := ((nhi * shr32 + nlo) - (mhi * shr32 + mlo)) / 1E6;
end;
 
procedure TForm1.Button4Click(Sender: TObject);
begin
    label1.Caption := FloatToStr(GetCpuSpeed) + 'mhz';
end;
   
暫時(shí)只是寫了這么多,以后會(huì)逐步更新添加
 

上一篇:在Delphi中進(jìn)行指紋儀的二次開發(fā)

下一篇:Delphi的組件讀寫機(jī)制(一)

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
學(xué)習(xí)交流
熱門圖片

新聞熱點(diǎn)

疑難解答

圖片精選

網(wǎng)友關(guān)注

主站蜘蛛池模板: 综合网天天色 | 成人一区二区在线观看视频 | 凹凸成人精品亚洲精品密奴 | 黄色久 | 欧美一级二级毛片视频 | 久久精品中文字幕一区二区三区 | 精品三级内地国产在线观看 | 欧美成人免费 | 国产在线一级片 | 国产精品一区二区三区在线播放 | 亚洲一区二区三区精品在线观看 | 精品av在线播放 | 美女福利视频国产 | 91午夜免费视频 | 欧美视频一区二区 | 国产羞羞网站 | 免费国产wwwwwww网站 | 伊人成人免费视频 | 狠狠操精品视频 | 久久久久久久一区二区三区 | 狠狠干91 | 黄色网址在线视频 | 久久精品4 | 久草视频免费 | asian附近女人裸体pics | 日韩黄色免费在线观看 | 操碰97 | 在线观看国产网站 | 天天艹综合 | 日韩 综合| 国产毛片在线看 | 日韩视频一区二区三区在线观看 | 欧洲狠狠鲁 | 一级大片在线观看 | 国产亚洲精品视频中文字幕 | 欧美日韩高清一区 | 一区二区三区四区高清视频 | 毛片大全在线观看 | 欧美久久一区二区 | 久久成人免费网站 | 欧美h版电影在线观看 |