1. Jika Anda ingin program Anda menangani pengecualian dengan benar, harap kutip unit SysUtils.pas, sebaliknya meskipun program menggunakan try. . . kecuali. . . Pengecualian juga tidak ditangkap dengan benar. 2. Cara untuk mendefinisikan string konstan resourcestring aa='aaaa';raise Exception.CreateRes(@aa); 3. Inisialisasi array konstan string const constarray:array [0..2] of string=('first ', 'kedua','ketiga');4. Tipe inisialisasi struktur Tstructinit=catatan A1:integer; A2:array [0..2] dari integer;End;Const m_structinit:Tstructinit=(A1:0;A2:(0,1,2));5. Panjang array multidimensi var array2:array array integer;setlength(array2,2,2) ;6 . Ruang yang dibuka menggunakan Create dan New ada di heap dan tidak dapat dilepaskan secara otomatis. Disarankan untuk menggunakan FreeAndNil untuk melepaskan Parameter dan variabel lokal ada di tumpukan dan dilepaskan secara otomatis. 7. SizeOf tidak cocok untuk objek dan selalu mengembalikan 4; dapat dikembalikan dengan benar untuk tipe tetap. 8. Create(nil) perlu dirilis secara manual, dan Create(self) akan dirilis saat pemilik merilis perubahan telah Tentukan nilai konstanta PROcedure ChangeConst(const Const;var Value;Size:Integer);begin Move((@Value)^,(@Constant)^,Size);End;10. Menggunakan DownTo dalam satu lingkaran saat melakukan operasi penghapusan akan menghindari kesalahan. 11. Kode Ascii karakter Cina adalah >128, yang dapat digunakan untuk menentukan apakah itu karakter Cina unit Sharemem untuk referensi manajemen memori BORLANDMM.DLL 13. PostMessage hanya menempatkan pesan dalam antrian pesan dan perlu diantri untuk diproses. SendMessage melewati antrian pesan dan dikirim langsung ke prosedur jendela, dan tidak kembali sampai pesan memproses nilai kembali. 14. Gerakan mouse masuk dan keluar pesan: CM_MOUSEENTER, CM_MOUSELEAVE15. Pesan Shutdown WM_QUERYENDsession16 AktifkanHint untuk membuat formulir mengambang.17. Panggil kotak dialog properti file menggunakan ShellAPI; function ShowFileProperties(FileName: String; Wnd: kata kerja lp := PAnsiChar('properti'); lpIDList := nihil; lpDirektori := nihil; nShow := 0; hkeyClass := hProses := 0; lpKelas := nihil; Hasil := ShellExecuteEX(@sfi);end;procedure TForm1.Button1Click(Sender: TObject);begin ShowFileProperties('c:/AA.txt', Handle);end;18. Mengubah waktu sistem menggunakan Windows,Dialogs,Forms;var MyTime : TsystemTime;mulai FillChar(MyTime,sizeof(MyTime),#0); MyTime.wYear:=2003; MyTime.wMonth:=06; MyTime.wDay:=01; Jika tidak SetSystem(MyTime) makaShowmessage('Failure'); Rangkaian);
var
Pencarian: TSearchRec;
Rek: Kata;
Mulai
SourceDir := SourceDir + '/';
Rek := FindFirst(SourceDir + '*.*', faAnyFile, Pencarian);
Sedangkan Rek = 0 Lakukan
Mulai
Jika Pencarian.Nama[1] <> '.' Lalu
Mulai
Jika (Search.Attr Dan faDirectory) = faDirectory Lalu
Mulai
Windows.CreateDirectory(PChar(DestinationDir + '/' + Pencarian.Nama), nihil);
FileSetAttr(DestinationDir + '/' + Pencarian.Nama, FileGetAttr(SourceDir + '/' + Pencarian.Nama));
X_Copy(SourceDir + '/' + Pencarian.Nama, DestinationDir + '/' + Pencarian.Nama);
akhir
Kalau tidak
Mulai
CopyFile(PChar(SourceDir + '/' + Pencarian.Nama),PCar(DestinationDir + '/' + Pencarian.Nama), Benar);
FileSetAttr(DestinationDir + '/' + Pencarian.Nama, FileGetAttr(SourceDir + '/' + Pencarian.Nama));
aplikasi.ProcessMessages;
akhir;
akhir;
Rek := TemukanBerikutnya(Pencarian);
akhir;
TemukanTutup(Cari);
akhir;20. Menggambar prosedur bitmap transparan DrawTrans(DestCanvas: TCanvas; ; ORBitmap:= NIL; coba ANDBitmap:= TBitmap.Create; ORBitmap:= TBitmap.Create; Src := Batas(0,0, SrcBitmap.Width, SrcBitmap.Height); dengan ORBitmap mulai Lebar:= SrcBitmap.Width; .Warna := clHitam; Kanvas.CopyMode := cmSrcCopy; Canvas.BrushCopy(Src, SrcBitmap, Src, AColor); dengan ANDBitmap dimulai Lebar:= SrcBitmap.Lebar:= SrcBitmap.Tinggi; ; Kanvas.BrushCopy(Src, SrcBitmap, Src, AColor); akhir; dengan DestCanvas mulai CM := CopyMode := cmSrcAnd; Draw(X,Y, ANDBitmap); ANDBitmap.Gratis; ORBitmap.Gratis; akhir;akhir;prosedur TForm1.Button4Click(Pengirim: TObject);mulai DrawTrans(Image1.Canvas, 0,0, Image2.Picture.Bitmap, clBlack, clSilver);end;21. Dapatkan fungsi kecepatan CPU GetCpuSpeed: Extended;var t, mhi, mlo, nhi, nlo: dword; shr32 : comp;mulai shr32 := 65536; shr32 := shr32 * 65536; t := GetTickCount; sementara t = GetTickCount lakukan ; asm DB 0FH,031H // rdtsc mov mhi,edx mov mlo,eax berakhir; nhi,edx mov nlo,eax end; ((nhi * shr32 + nlo) - (mhi * shr32 + mlo)) / 1E6;end;procedure TForm1.Button4Click(Sender: TObject);begin label1.Caption := FloatToStr(GetCpuSpeed) + 'mhz';end; Saya baru saja menulis begitu banyak, dan saya akan memperbarui dan menambahkan lebih banyak secara bertahap di masa mendatang.