Difference between revisions of "FCL/de"

From Free Pascal wiki
Jump to navigationJump to search
(New page: {{FCL}} The ''Free Component Library'' (FCL) consists of a collection of units, providing components (mostly classes) for common tasks. It intends to be compatible with Delphi's ''Visual ...)
 
(Übersetzt)
Line 1: Line 1:
 
{{FCL}}
 
{{FCL}}
  
The ''Free Component Library'' (FCL) consists of a collection of units, providing components (mostly classes) for common tasks.
+
Die ''Free Component Library'' (FCL) besteht aus einer Sammlung von Units, Komponenten und Klassen für allgemeine Aufgaben. Dabei beschränkt sich die FCL auf nicht sichtbare Komponenten.
It intends to be compatible with Delphi's ''Visual Component Library'' (VCL), but the FCL is restricted to non-visual components.
 
On the other hand, the FCL also goes beyond the VCL.
 
  
See  [http://www.freepascal.org/fcl/fcl.html Free Component Library] for the current development status and an overview of the available components
+
Die FCL soll zum einen Kompatibel mit der ''Visual Component Library'' (VCL) sein, zum anderen soll sie darüber hinaus gehen.
(though this seems inconsistent with [http://lazarus-ccr.sourceforge.net/docs/fcl/index.html Reference for 'fcl'] in Lazarus).
 
You can also check the [http://www.freepascal.org/cgi-bin/viewcvs.cgi/trunk/packages/ source repository].
 
Note that there are also some platform-specific files in the FCL.
 
  
After the example, you can find a list of some FCL components.
+
Einen Überblick über die Komponenten der FCL, sowie über den aktuellen Entwicklungsstand, kann über den Link [http://www.freepascal.org/fcl/fcl.html Free Component Library] gewinnen.
  
=== Usage ===
+
Die aktuellsten Source-Pakete gibt es [http://www.freepascal.org/cgi-bin/viewcvs.cgi/trunk/packages/ hier]. Dabei sind mache Pakete plattformspezifisch.
  
To use an FCL component you need to include its name in a '''uses''' clause of your program or unit (see example below).
 
The default compiler configuration is set up to search the fcl directory for such units.
 
You can also set the appropriate search path with a command-line compiler option of the form -Fu<path-to-fcl-units>.
 
  
=== Documentation ===
+
=== Wie die FCL nutzen? ===
  
Currently, the FCL is not documented (feel free to contribute;
+
Um eine FCL-Komponente in Ihr Programm einzubinden, müssen Sie einfach den Namen der Componente in den '''uses'''-Bereich Ihres Programms hinzufügen (siehe Beispiel unten). Durch diesen Eintrag wird der Compiler beim compilieren veranlasst, im FCL-Verzeichnis von FreePascal nach solchen Units zu suchen, und diese einzubinden.
also take a look at [http://lazarus-ccr.sourceforge.net/docs/fcl/index.html Reference for 'fcl']).
 
For Delphi compatible units, you could consult the Delphi documentation.
 
You can always take a look at the source files in the [http://www.freepascal.org/cgi-bin/viewcvs.cgi/trunk/packages/ source repository].
 
  
=== Example ===
+
(Sie können diesen Suchpfad auch manuell über den Befehl
 +
-Fu<Pfad_zu_den_FCL-Units>
 +
umbiegen)
  
The following program illustrates the use of the class TObjectList in the FCL unit Contnrs (providing various containers, including lists, stacks, and queues):
+
=== Dokumentation der FCL ===
 +
 
 +
Derzeit existiert leider keine Dokumentation zur FCL (Sie können gerne bei der Erstellung einer Dokumentation mithelfen). Einige zusätzliche Informationen gibt es in der [http://lazarus-ccr.sourceforge.net/docs/fcl/index.html Lazarus-Referenz]
 +
Im Fall von delphikompatiblen Units kann auch die Delphi-Dokumentation verwendet werden.
 +
 
 +
=== Beispiel ===
 +
 
 +
Das folgende Programm illustriert den Einsatz der Klasse TObjectList, die sich in der FCL-Unit Contnrs befindet und Dinge wie Listen, Stacks und Queques unterstützt.
  
 
<delphi> program TObjectListExample;
 
<delphi> program TObjectListExample;
 
   
 
   
 
  uses
 
  uses
   Classes, { from RTL for TObject }
+
   Classes, { Für TObject aus der RTL }
   Contnrs; { from FCL for TObjectList }
+
   Contnrs; { Für TObjectList aus der FCL }
 
   
 
   
 
  type
 
  type
     TMyObject = class(TObject)  { just some application-specific class }
+
     TMyObject = class(TObject)  { Eine beliebige anwendungsspezifische Klasse }
 
     private
 
     private
       FName: String; { with a string field }
+
       FName: String; { mit einer Variablen vom Typ String }
 
     public
 
     public
       constructor Create(AName: String); { and a constructor to create it with a given name }
+
       constructor Create(AName: String); { und einem Constructor, um sie mit einem gegebenen Namen zu erstellen }
       property Name: String read FName; { and a property to read the name }
+
       property Name: String read FName; { und einem Property, um den Namen auszulesen. }
 
   end;
 
   end;
 
   
 
   
Line 51: Line 49:
 
   
 
   
 
  var
 
  var
   VObjectList: TObjectList; { for a list of objects; it is a reference to such a list! }
+
   VObjectList: TObjectList; { Für eine Objektliste; }
 
   
 
   
 
  begin
 
  begin
   VObjectList := TObjectList.Create  { create an empty list }
+
   VObjectList := TObjectList.Create  { erstellt eine leere Liste }
 
   with VObjectList do
 
   with VObjectList do
 
   begin
 
   begin
Line 64: Line 62:
 
  end.</delphi>
 
  end.</delphi>
  
This program must be compiled in an object-oriented mode, such as -Mobjfpc or -Mdelphi.
+
Dieses Programm muss in einem objektorientierten Modus erstellt werden, etwa -Mobjfpc oder -Mdelphi.
  
=== FCL Components ===
+
=== FCL-Komponenten ===
  
This is not an exhaustive list (to avoid duplication of effort).
+
Um Redundanzen zu den oben angegebenen Links zu vermeiden sind hier lediglich Komponenten gelistet, die entweder sehr wichtig sind, oder die auf anderem Wege schwierig zu finden sind.
It only mentions some important components, or components that are otherwise not easy to find.
 
  
; Classes : Base classes for Object Pascal extensions in Delphi mode
+
; Classes : Basisklasse für die Objekt-Pascal-Erweiterungen im Delphimodus.
; Contnrs : Some common container classes
+
; Contnrs : Allgemeine Kontainerklassen, wurde im obigem Beispiel verwendet.
; FPCUnit : Unit testing framework (based on Kent Beck's unit testing framework, e.g. cf. [http://www.junit.org/ JUnit]), [http://www.freepascal.org/docs-html/fpcunit.pdf documenting article about FPCUnit]
+
; FPCUnit : Unit-testing-framework (basiert auf das unit-testing-framework von Kent Beck, e.g. cf. [http://www.junit.org/ JUnit]), [http://www.freepascal.org/docs-html/fpcunit.pdf Artikel, die die FPCUnit dokumentieren]
; XMLRead, XMLWrite and DOM : Detailed at the [[XML Tutorial]]
+
; XMLRead, XMLWrite und DOM : Details hierzu im [[XML Tutorial]]

Revision as of 23:04, 23 July 2007

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

Die Free Component Library (FCL) besteht aus einer Sammlung von Units, Komponenten und Klassen für allgemeine Aufgaben. Dabei beschränkt sich die FCL auf nicht sichtbare Komponenten.

Die FCL soll zum einen Kompatibel mit der Visual Component Library (VCL) sein, zum anderen soll sie darüber hinaus gehen.

Einen Überblick über die Komponenten der FCL, sowie über den aktuellen Entwicklungsstand, kann über den Link Free Component Library gewinnen.

Die aktuellsten Source-Pakete gibt es hier. Dabei sind mache Pakete plattformspezifisch.


Wie die FCL nutzen?

Um eine FCL-Komponente in Ihr Programm einzubinden, müssen Sie einfach den Namen der Componente in den uses-Bereich Ihres Programms hinzufügen (siehe Beispiel unten). Durch diesen Eintrag wird der Compiler beim compilieren veranlasst, im FCL-Verzeichnis von FreePascal nach solchen Units zu suchen, und diese einzubinden.

(Sie können diesen Suchpfad auch manuell über den Befehl

-Fu<Pfad_zu_den_FCL-Units>

umbiegen)

Dokumentation der FCL

Derzeit existiert leider keine Dokumentation zur FCL (Sie können gerne bei der Erstellung einer Dokumentation mithelfen). Einige zusätzliche Informationen gibt es in der Lazarus-Referenz Im Fall von delphikompatiblen Units kann auch die Delphi-Dokumentation verwendet werden.

Beispiel

Das folgende Programm illustriert den Einsatz der Klasse TObjectList, die sich in der FCL-Unit Contnrs befindet und Dinge wie Listen, Stacks und Queques unterstützt.

<delphi> program TObjectListExample;

uses
  Classes, { Für TObject aus der RTL }
  Contnrs; { Für TObjectList aus der FCL }

type
   TMyObject = class(TObject)  { Eine beliebige anwendungsspezifische Klasse }
   private
     FName: String; { mit einer Variablen vom Typ String }
   public
     constructor Create(AName: String); { und einem Constructor, um sie mit einem gegebenen Namen zu erstellen }
     property Name: String read FName; { und einem Property, um den Namen auszulesen. }
  end;

constructor TMyObject.Create(AName: String);
begin
  inherited Create;
  FName := AName;
end;

var
  VObjectList: TObjectList; { Für eine Objektliste; }

begin
  VObjectList := TObjectList.Create  { erstellt eine leere Liste }
  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.</delphi>

Dieses Programm muss in einem objektorientierten Modus erstellt werden, etwa -Mobjfpc oder -Mdelphi.

FCL-Komponenten

Um Redundanzen zu den oben angegebenen Links zu vermeiden sind hier lediglich Komponenten gelistet, die entweder sehr wichtig sind, oder die auf anderem Wege schwierig zu finden sind.

Classes
Basisklasse für die Objekt-Pascal-Erweiterungen im Delphimodus.
Contnrs
Allgemeine Kontainerklassen, wurde im obigem Beispiel verwendet.
FPCUnit
Unit-testing-framework (basiert auf das unit-testing-framework von Kent Beck, e.g. cf. JUnit), Artikel, die die FPCUnit dokumentieren
XMLRead, XMLWrite und DOM
Details hierzu im XML Tutorial