Sign in Join
Wiki copytemporary

Components and Code examples/ru: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Components and Code examples/ru

OldNewLine
1+![](/wiki-images/8/84/Fpc_source_logo.png) ![](/wiki-images/0/0e/Lazarus_source_logo.png)
2+
3+## Компоненты из Lazarus-CCR
4+
5+### Мультимедиа
6+
7+- [[ACS|ACS (Audio Component Suite)]] - коллекция компонентов для разработки приложений, работающих с аудио-данными (воспроизведение/запись/обработка). Может воспроизводить wav, ogg, mp3, mp2, wma и другие форматы, записывать звук с любого источника, "грабить" и много другое. См. [ACS](http://acs.ullihome.de/).
8+- [[Bluetooth]] - доступ к Bluetooth-устройствам (например, Wiimote).
9+
10+### Графика
11+
12+- [[GLScene]] - полноценная библиотека 3D-графики, использующая для рендеринга OpenGL. Позволяет редактировать 3D-сцены непосредственно из IDE. См. также [официальный сайт](http://www.glscene.org) GLScene.
13+- [[TOpenGLBox]] - каркасный OpenGL-компонент для Lazarus, реализующий область рендеринга OpenGL.
14+- [[SMNetGradient]] - градиентная заливка для Lazarus.
15+- [[TAChart]] - удобные и функциональные диаграммы для Lazarus.
16+- [[PlotPanel]] - компоненты для отрисовки диаграмм и графиков.
17+- [[LazRGBGraphics]] - пакет для быстрой обработки изображений и манипуляции пикселями (такими как scan line) в памяти.
18+- [[TMetafile / TMetafileCanvas|TMetafile/TMetafileCanvas]] - реализация EnhMetafile API для Windows.
19+- [[ZenGL]] - кросс-платформенная библиотека для разработки игр, использующая OpenGL.
20+- [[BGRABitmap]] - отрисовка фигур и изображений с прозрачностью, прямым доступом к пикселям и др.
21+- [[Double Gradient]] - компонент для простой отрисовки 'двойного градиента' и 'n-градиента'.
22+- [[Gradient Filler]] одно из лучших решений для создания произвольных n-градиентов в Lazarus.
23+- [[PascalMagick]] - простой в использовании API для взаимодействия с [ImageMagick](http://www.imagemagick.org), а также кросс-платформенное ПО для создания, редактирования и компоновки пиксельных (bitmap) изображений.
24+
25+### Инструменты
26+
27+- [[FpSystools]] - адаптация Kylix-пакета TurboPower Systools для Lazarus/FPC.
28+- [[DCPcrypt]] - библиотека криптографических компонентов DCPcrypt.
29+- [[RXfpc/ru|RXfpc]] - некоторые из компонентов RXlib, конвертированные на Lazarus.
30+- [[MultiLog]] - система ведения логов, разработанная для FPC-Lazarus.
31+- [[OnGuard]] - порт Turbo Power OnGuard
32+- [[UniqueInstance]] - компонент, блокирующий запуск более чем одной копии приложения.
33+- [[XDev Toolkit]] - кросс-платформенный пакет инструментов для разработчиков.
34+- [[MouseAndKeyInput]] - юнит для платформо-независимого управления вводом посредством мыши и клавиш.
35+- [[PascalSane]] - бинд API для сканера (libsane) с примером использования.
36+- [[log4delphi]] - система ведения логов, основанная на log4j.
37+- [[fppkggui]] - простой gui для [[fppkg]].
38+- [[SymScan]] - интерфейс сканера штрих-кодов для устройств серий Symbol/Motorolla MC.
39+- [[UTF8 Tools|Theodp]] - инструменты для работы с UTF-8.
40+- [[Delphi form to HTML converter]] - Lazarus-версия компонента Delphi Form to HTML (F2H).
41+
42+### Архивация
43+
44+- [[Zlibar]] - объекты для создания и распаковки архивов zlib, содержащих несколько файлов.
45+- [[FreePascalArchivePackage]] - адаптация библиотеки TurboPower Software Abbrevia для Free Pascal Compiler.
46+- [[ZipFile]] - компонент для инкапсуляции zip-файлов (с архивом можно работать как с обычной файловой системой).
47+- [[libtar]] - класс для работы с .TAR-архивами от Stefan Heymann; может использоваться совместно с zstream для создания файлов .tar.gz.
48+- [[bzip2lib]] - потоковые классы для сжатия и распаковки bzip2.
49+- [[paszlib]] - преобразованая стандартная библиотека Zlib для Pascal (без зависимостей).
50+
51+### Редактирование и просмотр
52+
53+- [[PowerPDF]] - порт визуальных компонентов PowerPDF для Lazarus.
54+- [[RichView]] - порт freeware-редакции компонента TRichView для Lazarus.
55+- [[RichMemo/ru|RichMemo]] - кросс-платформенная реализация редактора и просмотрщика Rich Text.
56+- [[SynEdit]] - компоненты типа TMemo с подсветкой синтаксиса и другими функциями (используются IDE).
57+- [[THtmlPort]] - порт компонентов HTML Components (THtmlViewer, TFrameViewer, TFrameBrowser) от Dave Baldwin для Lazarus.
58+- [[GeckoPort]] - порт Gecko SDK for Delphi от Takanori Ito для Lazarus, включающий TGeckoBrowser.
59+- [[Fshcomp]] - компоненты Edit.
60+
61+### Сети
62+
63+- [[BeepFp]] - framework для протокола BEEP.
64+- [[Sockets]] - компоненты для работы с сокетами TCP/IP.
65+- [[lNet]] - набор компонентов, обеспечивающих простую, однопотоковую управляемую событиями реализацию протоколов, начиная с TCP и UDP, и заканчивая SMTP и HTTP. lNet не использует никаких внешних библиотек и очень легко портируется на новые платформы.
66+- [[FPC and Apache Modules]] - заголовочные файлы для создания модулей к Apache на FPC.
67+- [[Web Service Toolkit|Web Services Toolkit]] - пакет для работы с веб-сервисами.
68+
69+### Базы данных
70+
71+- [[fb embedded2 Laz]] - использование встраиваемой (embedded) версии FireBird 3 в Lazarus.
72+- [[TPSQL]] - компоненты для подключения к базам данных PostgreSQL.
73+- [[tiOPF]] - TechInsite Object Persistent Framework (версия 2).
74+- [[TParadoxDataSet]] - реализация TDataSet, позволяющая читать файлы Paradox до версии 7 (возможно и выше).
75+- [[ZeosDBO]] - набор компонентов для работы с различными базами данных (Firebird, PostgreSQL, MySQL, Oracle, SQLite и другие).
76+- [[SQLitePass]] - компоненты для подключения к базам SQLite.
77+- [[MS Access]] - работа с использованием TODBCConnection через FILEDSN
78+
79+### Форматы файлов
80+
81+- [[CsvDocument/ru|CsvDocument]] - работа с CSV файлами с использованием парсера или "клеточного" интерфейса наподобие того, что используется в компоненте StringGrid.
82+
83+### Контейнеры
84+
85+- [[StringHashMap]] - контейнер String -\> Pointer. Быстрый и расходующий минимум памяти.
86+
87+### Система
88+
89+- [[EpikTimer]] - точный таймер, написанный специально для Lazarus.
90+- [[Manager Worker Threads System]] - менеджер потоков, позволяющий обрабатывать многочисленные объекты и данные в реальном времени.
91+- [[TrayIcon]] - кросс-платформенный компонент для создания значка приложения в системном трее.
92+- [[TPopupNotifier]] - компонент, показывающий подсказки в виде облака (balloon).
93+- [[MultiDoc]] - компонент для написания псевдо-MDI приложений в Lazarus.
94+- [[MDButtonsBar]] - ButtonsBar для компонента MultiDoc.
95+- [[MPICH]] - биндинги для MPI (Message Passing Interface).
96+- [[Bluetooth]] - доступ к Bluetooth-устройствам.
97+
98+### Визуальные компоненты
99+
100+- [[VirtualTreeview]] - порт быстрого компонента virtual treeview от [SoftGems](http://www.soft-gems.net/index.php?option=com_content&task=view&id=12&Itemid=33).
101+- [[Turbopower Visual PlanIt]] - порт компонентов для планирования Visual PlanIt для Lazarus.
102+- [[RingChart and AnalogWatch]] - ещё одна эллиптическая диаграмма, а также аналоговые часы для Lazarus и FPC.
103+- [[ColorBox]] - "пипетка" (сolor-picker) с предварительным просмотром.
104+- [[Spook&|Spook's Panel Components]] - коллекция компонентов-панелей.
105+- [[HistoryFiles]] - компонент для хранения списка "последних файлов" в .ini-файле и отображения его в меню.
106+- [[ColorPalette]] - цветовая палитра, позволяющая использовать произвольные наборы цветов.
107+- [[OrphPort]] - реализация контролов TurboPower Orpheus для Lazarus.
108+- [[TSubForm]] - Data-Aware компоненты SubForm, основанные на записях и датасетах (dataset).
109+- [[Lui Controls]] - набор визуальных компонентов (TToggleLabel, TMenuButton).
110+- [[JvXPBar]] - порт контрола TJvXPBar из состава [JVCL's](http://jvcl.sourceforge.net), отображающего иконку, заголовок и ноль или более кликабельных объектов в своей клиентской области.
111+- [[CmdLine]] - строка запроса команды.
112+- [[Wile64]] - набор компонентов для Lazarus (TGifAnim, TColorProgress, TLabelCut и другие).
113+- [[TGradButton]] - кнопка с улучшенным внешним видом.
114+- [[TMyRollOut and ExpandPanel]] - сворачивающиеся блоки (аналог TJvRollOut); могут быть размещены на скрывающейся панели.
115+- [[FileMenuHandler]] - сохранение списка "последних файлов" и реализация команд "Открыть", "Сохранить", "Сохранить как" и "Выход".
116+- [[ZVDateTimeControls Package]] - пакет, включающий TZVDateTimePicker (клон TDateTimePicker из Delphi) и TDBZVDatePicker (data-aware версия TZVDateTimePicker).
117+- [[BGRAControls]] - набор компонентов, основанных на пакете [[BGRABitmap]] (включает BGRAImageList, BGRASpeedButton, BGRAButton и BGRAPanel).
118+
119+### Расширения Lazarus IDE
120+
121+- [[Manual Docker]] - расширение, позволяющее "приклеить" окно с сообщениями компилятора к редактору кода.
122+- Список других расширение можно посмотреть на страничке [Lazarus IDE plugins](/wiki-category/Lazarus%20IDE%20plugins).
123+
124+### Доступ к "железу"
125+
126+- [NIDAQmxBase and NIDAQmx](http://forum.lazarus.freepascal.org/index.php/topic,7894.0.html) - модуль для использования устройств National Instruments с помощью библиотеки NI-DAQmxBase(Linux, Windows, macOS) и NI-DAQmx(Windows и NIDAQmx 8.0.2 для Linux).
127+- Примеры на Паскале [1](http://wiki.freepascal.org/NI-DAQmx_and_NI-DAQmx_Base_examples)
128+
129+## Пакеты для FPC/Lazarus, размещённые на сайтах разработчиков
130+
131+#### Архивация
132+
133+- [lazarus-zlib](http://code.google.com/p/lazarus-zlib/) - простой в использовании класс-обёртка для zlib.
134+
135+#### Графика и игры
136+
137+- [Graphics32](http://graphics32.org) - набор компонент для работы с графикой. Включает более функциональную реализацию TImage (TImage32).
138+- [[Castle Game Engine]] - движок 3D-игры, ориентированный прежде всего на форматы VRML/X3D.
139+- [Diagram](http://www.benibela.de/sources_de.html#diagram) - модуль для отрисовки диаграмм с использованием системы моделей/просмотров.
140+- [DrawObjectsExtended](http://www.tcoq.org/composants) - графический компонент для отрисовки структурных диаграмм, портированный из Delphi.
141+- [mpg123.dll](http://www.breakoutbox.de/pascal/pascal.html#mpg123) - кросс-платформенный декодер форматов MPEG layers 1, 2 и 3 (MP3 протестирован плохо); прилагаемый пример содержит два враппера, протестированных только под Win32.
142+- [FreeImage](http://breakoutbox.de/pascal/applications.html) - открытая библиотека, обеспечивающая поддержку популярных графических форматов, таких как PNG, BMP, JPEG, TIFF и др. (работает в Windows, Linux и Mac OS X). Включает PicViewer - пример приложения (только для Windows), показывающего изображения с использованием данной библиотеки (DLL).
143+
144+#### Мультимедиа
145+
146+- [PortAudio](http://www.breakoutbox.de/pascal/pascal.html#PortAudio) - проект кросс-платформенного Audio API, доступный для Windows, Mac OS X, Unix (OSS/ALSA), SGI и BeOS. Содержит врапперы, позволяющие работать с C-библиотеками, а также примеры использования PortAudio DLL в Lazarus LCL под Windows. Враппер для portaudio.dll взят из Sourceforge-проекта UltraStar.
147+- [UltraStar Deluxe](http://sourceforge.net/projects/ultrastardx/) - заголовочные файлы к различным библиотекам для Windows, Linux и Mac OS X (с некоторыми сокращениями): portaudio, BASS, ffmpeg, SDL, libpng, FreeImage, freetype, JEDI-SDL, Lua, midi, pcre, portmixer, projectM, samplerate, SQLite, zlib, fft.
148+- [[RackCtls]] - коллекция компонентов для работы с "Hi-fi-системами".
149+
150+#### Графика и интерфейс
151+
152+- [HTML Viewer Components](http://code.google.com/p/thtmlviewer/) - ещё одна попытка реанимировать HTMLView от Dave Baldwin. Заявлена совместимость с Delphi и Lazarus, но поддержка Lazarus находится в стадии alfa-тестирования.
153+- [TTreeListView](http://www.benibela.de/components_en.html#treelistview) - комбинация TTreeView и TListView, отображающая ветви дерева с дополнительными колонками.
154+- [ExcelInterfaces](http://www.tcoq.org/composants) - компонент для работы с таблицами Excel из программ на FPC и Lazarus. Он также демонстрирует использование интерфейсов COM на платформе Windows.
155+- [TMapViewer](http://keit.co/mapviewer.zip) - компонент для работы с популярными картографическими сервисами Google Maps и OpenStreet. Использует только стандартные графические контролы. Есть версия для Windows (только стандартные средства) и Linux (требуется библотека Synapse).
156+
157+#### Сеть и устройства
158+
159+- [PascalSCADA](http://wiki.lazarus.freepascal.org/PascalSCADA) - набор компонентов для упрощения разработки приложений HMI/SCADA, взаимодействующих с PLC или другими промышленными устройствами.
160+- [ICU4PAS](http://www.icu4pas.org/) - кросс-платформенные классы на Object Pascal для Direct Class Wrapper с использованием библиотек ICU.
161+- [Internet Tools](http://www.benibela.de/sources_de.html#internettools) - класс для получения и парсинга html-страниц, а также автообновления.
162+- [CUPS for Lazarus project](http://cups4lazarus.sourceforge.net/) - реализация Common UNIX Printing System для FPC/Lazarus.
163+- [Runge-Kutta](http://tcoq.free.fr/composants.html) - научный компонент для интегрирования дифференциальных уравнений с использованием событий.
164+- [Brain Patchwork DX, LLC.](http://www.bpdx.com/) - порт визуальной и невизуальной реализации клиента и сервера TCP/UDP для Lazarus 0.9.22/FPC 2.0.4.
165+- [Synapse](http://www.ararat.cz/synapse/) - библиотека для работы с протоколом TCP/IP.
166+- Indy
167+ - [Indy for Lazarus project](http://indy4lazarus.sourceforge.net/) - 119 компонентов Indy для for FPC/Lazarus (проект заморожен).
168+ - [[Indy with Lazarus]] - адаптация Indy9 и Indy10 для Lazarus (ещё одна попытка).
169+- [RealThinClient SDK](http://sourceforge.net/projects/rtcsdk/) - компоненты для создания стабильных HTTP(S) клиентных и серверных приложений.
170+
171+#### Базы данных
172+
173+- [FIBL](http://sourceforge.net/projects/fibl/) - порт пакета FreeIBComponents для Lazarus.
174+- [SQLite for Lazarus](http://petrochenko.ru/lazarus/lazarus-sqlite.html) - класс-обёртка для работы с базами данных SQLite через нативную SQLite.dll.
175+
176+## Примеры программ
177+
178+- [[SysRec]] - приложения для захвата и записи видео; может быть скачано [здесь](http://sourceforge.net/project/showfiles.php?group_id=92177).
179+- [[Micro-mainframe Transmission Command Generator for IBM Mainframes|Micro-mainframe Transmission Command Generator для IBM Mainframes]].
180+- [[Sudoku]] - решатель судоку.
181+- [[Libview]] - просмотр списка экспортируемых функций для выбранной библиотеки.
182+- [[Contacts Database]] - расширенная версия примера адресной книги с функцией отчётов.
183+- [[OpenGL Tutorial]] - пример кода для учебника OpenGL.
184+- [[Robot - The Game]] - очень простой пример написания игры (для начинающих).
185+- [[Kaldemonia]] - использование возможностей Google Searcher (с применением библиотеки Synapse).
186+- [[TSqlite3 Master Detail Example]] - пример работы с SQLite, использующий 3 небольшие таблицы и компонент sqlite.
187+- [[JCSV (Jans CSV Components)]] - пример использования набора компонентов TJansCSV.
188+- [[How To Use Interfaces]] - пример работы с интерфейсами и дженериками (generics).
189+- [LRS_Explorer](http://sourceforge.net/project/showfiles.php?group_id=240460) - небольшая программа для добавления изображений, музыки и т.п. в файл ресурсов Lazarus (lrs).
190+- [[Creating LCL Control From Libraries]] - демонстрирует создание и управление контролами LCL UI в приложении их плагинов (dll/so/dynlib).
191+
192+## Примеры использования RTL, FLC и LCLs
193+
194+- [[Manager Worker Threads System]] - пример разработки менеджера потоков.
195+- [[Dialog Examples]] - использование диалогов, отсутствующих в Палитре компонентов.
196+- [[Howto Use TOpenDialog]] - как использовать FileOpen Dialog.
197+- [[Howto Use TSaveDialog/ru]] - как использовать FileSave Dialog.
198+
199+## Статьи
200+
201+- [[Sample Graphics]] - галерея графики, созданной с помощью средств Lazarus.
202+- [[Fast direct pixel access]] - быстрое сравнение некоторых методов прямого доступа к пикселям.
203+- [[Perlin Noise]] - использование Perlin Noise в LCL-приложениях (статья).
204+
205+## См. также
206+
207+- [[Projects using Lazarus|Проекты, использующие Lazarus]]
208+- [[Operating Systems written in FPC|Операционные системы, написанные на FPC]]
209+- [[Using the Lazarus-ccr SVN repository|Использование SVN-репозитория Lazarus-ccr]]
210+
211+---
212+*From the Free Pascal wiki, page "Components and Code examples/ru", as it stood on 2023-01-25 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. 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](/wiki-contact).*

Back to history