Копия викизеркало

Это зеркало вики с pascal.chat. Правка, история и вход — там.

FCL/ru

Bahasa Indonesia · Deutsch · English · Español · Français · Suomi · Русский · 中文(中国) · 日本語

Free Component Library (FCL) - бесплатная и свободная библиотека компонентов Free Pascal. Она состоит из набора модулей, предоставляющих классы и компоненты для общих задач. FCL стремиться быть совместимой с библиотекой визуальных компонентов Delphi - VCL. Однако, FCL ограничивается только не визуальными компонентами. Lazarus так же имеет собственную библиотеку компонентов - LCL (Lazarus component library), с которой вы можете ознакомиться здесь: LCL Components.

Использование

Чтобы использовать FCL компонент необходимо включить имя модуля, в котором он реализован, в список после ключевого слова uses вашей программы или модуля(см. пример ниже). По умолчанию компилятор будет искать указанный модуль в папках FCL. Вы также можете указать компилятору явный путь поиска, используя параметр командной строки вида: -Fu<папка-к-fcl-модулям>.

Подпакеты

Полный список подпакетов FCL, можно найти здесь: Package List

Среди них можно выделить:

Документация

В настоящее время, FCL не полностью документирован (не стесняйтесь вносить свой вклад; также посмотрите: ссылка на 'fcl'). Для совместимых с Delphi модулей, вы можете обратиться к документации по Delphi. Вы всегда можете посмотреть исходные файлы в хранилище исходного кода.

Пример

Следующая программа демонстрирует использование класса TObjectList в FCL модуле Contnrs:

pascal
program TObjectListExample;
     {$mode ObjFPC} 
     uses
       Classes, { из RTL для TObject }
       Contnrs; { из FCL для TObjectList }
     
     type
        TMyObject = class(TObject)  { просто некий класс приложения }
        private
          FName: String; { с строковым полем }
        public
          constructor Create(AName: String); { и конструктором }
          property Name: String read FName; { а так же свойством для чтения }
       end;
     
     constructor TMyObject.Create(AName: String);
     begin
       inherited Create;
       FName := AName;
     end;
     
     var
       VObjectList: TObjectList; { для списка объектов; это ссылка на такой список! }
     
     begin
       VObjectList := TObjectList.Create;  { создать пустой список }
       with VObjectList do
       begin
         Add(TMyObject.Create('Это первый'));
         Writeln((Last as TMyObject).Name);
         Add(TMyObject.Create('Это второй'));
         Writeln((Last as TMyObject).Name);
       end;
     end.

Эта программа должна быть скомпилирована в объектно-ориентированном режиме, например: -Mobjfpc или -Mdelphi.

FCL Компоненты

Это не полный список (чтобы избежать дублирования). Он содержит только некоторые важные компоненты, или компоненты, которые в противном случае не легко найти.

Classes

Основные классы для Object Pascal в Delphi режиме

Contnrs

Некоторые общие классы-контейнеры

FPCUnit

Модуль тестирования (основан на модуле Kent Beck's. См. JUnit),FPCUnit tutorial (pdf)

XMLRead, XMLWrite и DOM

Подробно в XML Учебнике


From the Free Pascal wiki, page "FCL/ru", as the Internet Archive kept it on 2025-02-13, last changed on 2020-02-15. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Версия 3, последнее изменение: WikiArchive, .