FCL/id

From Lazarus wiki
Jump to: navigation, search

Deutsch (de) English (en) español (es) suomi (fi) français (fr) Bahasa Indonesia (id) 日本語 (ja) русский (ru) 中文(中国大陆)‎ (zh_CN)

Free Component Library (FCL) teridiri dari kumpulan unit yang menyediakan komponen (umumnya kelas) untuk tugas-tugas umum. Dimaksudkan agar kompatibel dengan Delphi's Visual Component Library (VCL), tetapi FCL terbatas hanya komponen non-visual. Di lain pihak, FCL melebihi VCL.

Lihat Free Component Library untuk status pengembangan saat ini dan tinjauan atas komponen yang tersedia (meskipun ini tidak konsisten dengan Reference for 'fcl' Lazarus). Anda juga dapat memeriksa repositori sumber. Catatan bahwa ada juga beberapa file spesifik-platform dalam FCL.

Setelah contoh, Anda dapat menemukan daftar beberapa komponen FCL.

Pemakaian

Untuk menggunakan komponen FCL Anda perlu menyertakan nama dalam klausul uses pada program atau unit ANda (lihat contoh di bawah). Konfigurasi kompilator standar disiapkan untuk mencari direktori fcl terhadap unit tersebut. Anda juga dapat menetapkan path pencarian dengan opsi kompilator baris perintah dalam bentuk -Fu<path-to-fcl-units>.

Dokumentasi

Saat ini, FCL tidak didokumentasikan (Anda bebas untuk berkontribusi; juga lihat di Referensi untuk 'fcl'). Untuk unit kompatibel Delphi, Anda dapat merujuk ke dokumentasi Delphi. Anda selalu dapat melihat kode file sumber di repositori sumber.

Contoh

Program berikut mengilustrasikan penggunaan kelas TObjectList dalam FCL unit Contnrs (menyediakan berbagai container, termasuk list, stack, dan queue):

 program TObjectListExample;
 
 uses
   Classes, { from RTL for TObject }
   Contnrs; { from FCL for TObjectList }
 
 type
    TMyObject = class(TObject)  { just some application-specific class }
    private
      FName: String; { with a string field }
    public
      constructor Create(AName: String); { and a constructor to create it with a given name }
      property Name: String read FName; { and a property to read the name }
   end;
 
 constructor TMyObject.Create(AName: String);
 begin
   inherited Create;
   FName := AName;
 end;
 
 var
   VObjectList: TObjectList; { for a list of objects; it is a reference to such a list! }
 
 begin
   VObjectList := TObjectList.Create  { create an empty list }
   with VObjectList do
   begin
     Add(TMyObject.Create('Thing One'));
     Writeln((Last as TMyObject).Name);
     Add(TMyObject.Create('Thing Two'));
     Writeln((Last as TMyObject).Name);
   end;
 end.

Program ini harus dikompilasi dalam mode orientasi-obyek, seperti -Mobjfpc atau -Mdelphi.

Komponen FCL

Ini bukan daftar keseluruhan (guna menghindari duplikasi usaha). Ini hanya menyebutkan beberapa komponen penting, atau komponen yang sebaliknya tidak mudah untuk ditemukan.

Classes 
Basis kelas untuk ekstensi Object Pascal dalam mode Delphi
Contnrs 
Beberapa kelas kontainer umum
FPCUnit 
Kerangka pengujian unit (didasarkan pada kerangka kerja pengujian unit Kent Beck, misalnya. cf. JUnit), mendokumentasi artikel mengenai FPCUnit
XMLRead, XMLWrite and DOM 
Rinciannya di Tutorial XML