Difference between revisions of "LCL Components"

From Free Pascal wiki
Jump to navigationJump to search
(→‎Standard tab: Add descriptions to components on Standard palette)
(33 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{LCL Components Langs}}
 
{{LCL Components Langs}}
 
Please choose the component about which you would like to know more:
 
Please choose the component about which you would like to know more:
 +
 +
==[[Forms]]==
 +
(See also the [https://lazarus-ccr.sourceforge.io/docs/lcl/forms/tform.html StdCtrls unit Online Docs])
 +
<center>[[Image:l-ide-1.png]]</center>
 +
 +
By default Form1 is added to the project when a new graphical application is created. Additional forms may be added to the project by clicking on the 'New Form' button on tool bar or selecting 'New Form' from the file menu.
 +
 +
* [[TForm]]
  
 
==[[Standard tab]]==
 
==[[Standard tab]]==
Line 6: Line 14:
 
<center>[[Image:Component_Palette_Standard.png]]</center>
 
<center>[[Image:Component_Palette_Standard.png]]</center>
  
{| class="wikitable sortable"
+
* Pointer (used to indicate you are not selecting a component)
! !! style="width:180px"|Component !! style="width:80px"|Usage  !! style="width:80px"|Online Docs !! Description
+
 
|-
+
* Components installed by default as part of the LCL:
| 1 || Pointer     ||                      ||                 
+
** [[TMainMenu]], [[TPopupMenu]], [[TButton]], [[TLabel]], [[TEdit]], [[TMemo]], [[TToggleBox]], [[TCheckBox]], [[TRadioButton]], [[TListBox]], [[TComboBox]], [[TScrollBar]], [[TGroupBox]], [[TRadioGroup]], [[TCheckGroup]], [[TPanel]], [[TFrame]], [[TActionList]]
|| used to indicate you are not selecting a component
 
|-
 
| 2 || TMainMenu    || [[TMainMenu|wiki]]   ||[http://lazarus-ccr.sourceforge.net/docs/lcl/menus/tmainmenu.html Link]
 
|| menu at the top of the form
 
|-
 
| 3 || TPopupMenu  || [[TPopupMenu|wiki]]   ||[http://lazarus-ccr.sourceforge.net/docs/lcl/menus/tpopupmenu.html Link]  
 
|| context menu that may popup on predefined events, usually by a click with the right mouse button
 
|-
 
| 4 || TButton      || [[TButton|wiki]]     ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tbutton.html Link]
 
|| displays a (text) button
 
|-
 
| 5 || TLabel      || [[TLabel|wiki]]       ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tlabel.html Link]  
 
|| descriptive text, not editable
 
|-
 
| 6 || TEdit        || [[TEdit|wiki]]       ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tedit.html Link]
 
|| single-line text edit field
 
|-
 
| 7 || TMemo        || [[TMemo|wiki]]       ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tmemo.html Link]
 
|| multi-line text edit field
 
|-
 
| 8 || TToggleBox  || [[TToggleBox|wiki]]   ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/ttogglebox.html Link]
 
|| two-state labeled button that is enabled or disabled with a single click.
 
|-
 
| 9 || TCheckBox    || [[TCheckBox|wiki]]   ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tcheckbox.html Link]
 
|| box with or without a checkmark acting like an ON/OFF button
 
|-
 
| 10 || TRadioButton || [[TRadioButton|wiki]] ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tradiobutton.html Link]
 
|| ON/OFF button to be used in conjunction with other TRadioButtons such that only one of them can be ON.
 
|-
 
| 11 || TListBox    || [[TListBox|wiki]]     ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tlistbox.html Link]
 
|| list of strings from which the user can make a selection
 
|-
 
| 12 || TComboBox    || [[TComboBox|wiki]]   ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tcombobox.html Link]
 
|| combination of an edit field with a connected drop down list to choose from.
 
|-
 
| 13 || TScrollBar  || [[TScrollBar|wiki]]   ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tscrollbar.html Link]
 
|| allows the user to scroll the content of an associated control by moving an slider
 
|-
 
| 14 || TGroupBox    || [[TGroupBox|wiki]]     ||[http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tgroupbox.html Link]
 
|| container that allows several objects to be grouped physically and conceptually
 
|-
 
| 15 || TRadioGroup  || [[TRadioGroup|wiki]] ||[http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tradiogroup.html Link]
 
|| group of related but mutually exclusive TRadioButtons, requiring the user to select one of a set of alternatives. It's like a TGroupBox with integrated TRadioButtons
 
|-
 
| 16 || TCheckGroup  || [[TCheckGroup|wiki]] ||[http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tcheckgroup.html Link]
 
|| group of TCheckBox items physically and logically grouped together on a container component
 
|-
 
| 17 || TPanel      || [[TPanel|wiki]]       ||[http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tpanel.html Link]
 
|| visible container for other components
 
|-
 
| 18 || TFrame      || [[TFrame|wiki]] ||
 
|| container for components that can be embedded into forms or other frames
 
|-
 
| 19 || TActionList  || [[TActionList|wiki]] ||[http://lazarus-ccr.sourceforge.net/docs/lcl/actnlist/tactionlist.html Link]
 
|| list of TActions to centralize menu/mouse/keyboard handling
 
|}
 
  
 
==[[Additional tab]]==
 
==[[Additional tab]]==
Line 71: Line 23:
 
<center>[[Image:Component_Palette_Additional.png]]</center>
 
<center>[[Image:Component_Palette_Additional.png]]</center>
  
{| class="wikitable"
+
*Components installed by default as part of the LCL:  
! style="width:150px"|Component || style="width:100px"|Usage || style="width:100px"|Online Docs
+
** [[TBitBtn]], [[TSpeedButton]], [[TStaticText]], [[TImage]], [[TShape]], [[TBevel]], [[TPaintBox]], [[TNotebook]], [[TLabeledEdit]], [[TSplitter]], [[TTrayIcon]], [[TMaskEdit]], [[TCheckListBox]], [[TScrollBox]], [[TApplicationProperties]], [[TStringGrid]], [[TDrawGrid]], [[TPairSplitter]], [[TColorBox]], [[TColorListBox]], [[TValueListEditor]]
|-
 
|| TBitBtn        || [[TBitBtn|wiki]]         || [http://lazarus-ccr.sourceforge.net/docs/lcl/buttons/tbitbtn.html Link]
 
|-
 
|| TSpeedButton  || [[TSpeedButton|wiki]]     || [http://lazarus-ccr.sourceforge.net/docs/lcl/buttons/tspeedbutton.html Link]
 
|-
 
|| TStaticText    || [[TStaticText|wiki]]     || [http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tstatictext.html Link]
 
|-
 
|| TImage        || [[TImage|wiki]]           || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/timage.html Link]
 
|-
 
|| TShape        || [[TShape|wiki]]           || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tshape.html Link]
 
|-
 
|| TBevel        || [[TBevel|wiki]]           || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tbevel.html Link]
 
|-
 
|| TPaintBox      || [[TPaintBox|wiki]]       || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tpaintbox.html Link]
 
|-
 
|| TNoteBook      || [[TNotebook|wiki]]       || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tnotebook.html Link]
 
|-
 
|| TLabeledEdit  || [[TLabeledEdit|wiki]]     || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tlabelededit.html Link]
 
|-
 
|| TSplitter      || [[TSplitter|wiki]]       || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tsplitter.html Link]
 
|-
 
|| TTrayIcon      || [[TTrayIcon|wiki]]       || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/ttrayicon.html Link]
 
|-
 
|| TMaskEdit      || [[TMaskEdit|wiki]]       || [http://lazarus-ccr.sourceforge.net/docs/lcl/maskedit/tmaskedit.html Link]
 
|-
 
|| TCheckListBox  || [[TCheckListBox|wiki]]   || [http://lazarus-ccr.sourceforge.net/docs/lcl/checklst/tchecklistbox.html Link]
 
|-
 
|| TScrollBox    || [[TScrollBox|wiki]]       || [http://lazarus-ccr.sourceforge.net/docs/lcl/forms/tscrollbox.html Link]
 
|-
 
|| TApplicationProperties || [[TApplicationProperties|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/forms/tapplicationproperties.html Link]
 
|-
 
|| TStringGrid    || [[TStringGrid|wiki]]     || [http://lazarus-ccr.sourceforge.net/docs/lcl/grids/tstringgrid.html Link]
 
|-
 
|| TDrawGrid      || [[TDrawGrid|wiki]]       || [http://lazarus-ccr.sourceforge.net/docs/lcl/grids/tdrawgrid.html Link]
 
|-
 
|| TPairSplitter  || [[TPairSplitter|wiki]]   || [http://lazarus-ccr.sourceforge.net/docs/lcl/pairsplitter/tpairsplitter.html Link]
 
|-
 
|| TColorBox      || [[TColorBox|wiki]]       || [http://lazarus-ccr.sourceforge.net/docs/lcl/colorbox/tcolorbox.html Link]
 
|-
 
|| TColorListBox  || [[TColorListBox|wiki]]   || [http://lazarus-ccr.sourceforge.net/docs/lcl/colorbox/tcolorlistbox.html Link]
 
|}
 
  
 
==[[Common Controls tab]]==
 
==[[Common Controls tab]]==
 
(See also the [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/index-4.html ComCtrls unit Online Docs])
 
(See also the [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/index-4.html ComCtrls unit Online Docs])
 
<center>[[Image:Component_Palette_Common_Controls.png]]</center>
 
<center>[[Image:Component_Palette_Common_Controls.png]]</center>
 +
*Components installed by default as part of the LCL:
 +
**[[TTrackBar]], [[TProgressBar]], [[TTreeView]], [[TListView]], [[TStatusBar]], [[TToolBar]], [[TUpDown]], [[TPageControl]], [[TTabControl]], [[THeaderControl]], [[TImageList]], [[TPopupNotifier]]
  
{| class="wikitable"
+
*Controls which are not part of the LCL, but install in this tab:
! style="width:150px"|Component || style="width:100px"|Usage || style="width:100px"|Online Docs
+
**[[RichMemo|TRichMemo]]
|-
+
**[[DateTimeCtrls Package#TDateTimePicker|TDateTimePicker]] (included in Lazarus and installed automatically with make bigide, but not officially part of LCL)
|| TTrackBar      || [[TTrackBar|wiki]]      || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/ttrackbar.html Link]
 
|-
 
|| TProgressBar  || [[TProgressBar|wiki]]  || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/tprogressbar.html Link]
 
|-
 
|| TTreeView      || [[TTreeView|wiki]]      || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/ttreeview.html Link]
 
|-
 
|| TListView      || [[TListView|wiki]]      || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/tlistview.html Link]
 
|-
 
|| TStatusBar    || [[TStatusBar|wiki]]    || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/tstatusbar.html Link]
 
|-
 
|| TToolBar      || [[TToolBar|wiki]]      || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/ttoolbar.html Link]
 
|-
 
|| TUpDown        || [[TUpDown|wiki]]        || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/tupdown.html Link]
 
|-
 
|| TPageControl  || [[TPageControl|wiki]]  || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/tpagecontrol.html Link]
 
|-
 
|| TTabControl    || [[TTabControl|wiki]]    || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/ttabcontrol.html Link]
 
|-
 
|| THeaderControl || [[THeaderControl|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/theadercontrol.html Link]
 
|-
 
|| TImgeList      || [[TImageList|wiki]]    || [http://lazarus-ccr.sourceforge.net/docs/lcl/controls/timagelist.html Link]
 
|-
 
|| TPopupNotifier || [[TPopupNotifier|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/popupnotifier/index.html Link]
 
|}
 
Controls which are not part of the LCL, but install in this tab:
 
 
 
*[[RichMemo|TRichMemo]]
 
 
 
*[[DateTimeCtrls Package#TDateTimePicker|TDateTimePicker]] (included in Lazarus and installed automatically with make bigide, but not officially part of LCL)
 
 
 
Tutorials:
 
  
*[[TTreeView]]
+
*Tutorials:
 +
**[[TTreeView]]
  
 
==[[Dialogs tab]]==
 
==[[Dialogs tab]]==
 
(See also the [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/index-4.html Dialogs unit Online Docs])
 
(See also the [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/index-4.html Dialogs unit Online Docs])
 
<center>[[Image:Component_Palette_Dialogs.png]]</center>
 
<center>[[Image:Component_Palette_Dialogs.png]]</center>
{| class="wikitable" cell-padding="10"
 
! style="width:150px"|Component || style="width:100px"|Usage            || style="width:100px"|Online Docs
 
|-
 
|| TOpenDialog || [[TOpenDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/topendialog.html Link]
 
|-
 
|| TSaveDialog || [[TSaveDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tsavedialog.html Link]
 
|-
 
|| TSelectDirectoryDialog || [[TSelectDirectoryDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tselectdirectorydialog.html Link]
 
|-
 
|| TColorDialog || [[TColorDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tcolordialog.html Link]
 
|-
 
|| TFontDialog || [[TFontDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tfontdialog.html Link]
 
|-
 
|| TFindDialog || [[TFindDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tfinddialog.html Link]
 
|-
 
|| TReplaceDialog || [[TReplaceDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/treplacedialog.html Link]
 
|-
 
|| TOpenPictureDialog || [[TOpenPictureDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/extdlgs/topenpicturedialog.html Link]
 
|-
 
|| TSavePictureDialog || [[TSavePictureDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/extdlgs/tsavepicturedialog.html Link]
 
|-
 
|| TCalendarDialog || [[TCalendarDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/extdlgs/tcalendardialog.html Link]
 
|-
 
|| TCalculatorDialog || [[TCalculatorDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/extdlgs/tcalculatordialog.html Link]
 
|-
 
|| TPrinterSetupDialog || [[TPrinterSetupDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tcustomprintersetupdialog.html Link]
 
|-
 
|| TPrintDialog || [[TPrintDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tcustomprintdialog.html Link],
 
|-
 
|| TPageSetupDialog || [[TPageSetupDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tcustomprintersetupdialog.html Link]
 
|-
 
|| TTaskDialog || [[TTaskDialog|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tcustomtaskdialog.html Link]
 
|}
 
  
Several useful  '''[http://lazarus-ccr.sourceforge.net/index.php?wiki=DialogExamples Dialog]'''  procedures or functions don't appear on the palette, but are easily used as direct calls from your source program.
+
* Components installed by default as part of the LCL:
 +
** [[TOpenDialog]], [[TSaveDialog]], [[TSelectDirectoryDialog]],[[TColorDialog]], [[TFontDialog]], [[TFindDialog]], [[TReplaceDialog]], [[TTaskDialog]], [[TOpenPictureDialog]], [[TSavePictureDialog]], [[TCalendarDialog]], [[TCalculatorDialog]], [[TPrinterSetupDialog]], [[TPrintDialog]], [[TPageSetupDialog]]
  
==[[Misc tab]]==
+
*Several useful '''[http://lazarus-ccr.sourceforge.net/index.php?wiki=DialogExamples Dialog]'''  procedures or functions don't appear on the palette, but are easily used as direct calls from your source program.
<center>[[Image:Component_Palette_Misc.png]]</center>
 
{| class="wikitable" cell-padding="10"
 
! style="width:150px"|Component || style="width:100px"|Usage            || style="width:100px"|Online Docs
 
|-
 
|| TColorButton || [[TColorButton|wiki]] || [http://lazarus-ccr.sourceforge.net/index.php?wiki=DialogsTxt Link]
 
|-
 
|| TSpinEdit || [[TSpinEdit|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/spin/tspinedit.html Link]
 
|-
 
|| TFloatSpinEdit || [[TFloatSpinEdit|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/spin/tfloatspinedit.html Link]
 
|-
 
|| TArrow || [[TArrow|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/arrow/tarrow.html Link]
 
|-
 
|| TCalendar || [[TCalendar|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/calendar/tcalendar.html Link]
 
|-
 
|| TEditButton || [[TEditButton|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn/teditbutton.html Link]
 
|-
 
|| TFileNameEdit || [[TFileNameEdit|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn/tfilenameedit.html Link]
 
|-
 
|| TDirectoryEdit || [[TDirectoryEdit|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn/tdirectoryedit.html Link]
 
|-
 
|| TDateEdit || [[TDateEdit|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn/tdateedit.html Link]
 
|-
 
|| TCalcEdit || [[TCalcEdit|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn/tcalcedit.html Link]
 
|-
 
|| TFileListBox || [[TFileListBox|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/filectrl/tfilelistbox.html Link]
 
|-
 
|| TButtonPanel || [[TButtonPanel|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/buttonpanel/tbuttonpanel.html Link]
 
|-
 
|| TShellTreeView || [[TShellTreeView|wiki]] ||
 
|-
 
|| TShellListView || [[TShellListView|wiki]] ||
 
|-
 
|| TXMLPropStorage || [[TXMLPropStorate|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/xmlpropstorage/txmlpropstorage.html Link]
 
|-
 
|| TIniPropStorage || [[TIniPropStorage|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/inipropstorage/tinipropstorage.html Link]
 
|-
 
|| TJSONPropStorage || [[TJsonPropStorage|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/inipropstorage/tjsonpropstorage.html Link]
 
|-
 
|| TIDEDialogLayoutStorage || ||
 
|}
 
  
 
==[[Data Controls tab]]==  
 
==[[Data Controls tab]]==  
 +
Data-aware components, which largely replicate the Standard and Additional groups but are applicable to databases:
 +
 
(See also the [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/index-4.html DBCtrls unit Online Docs])
 
(See also the [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/index-4.html DBCtrls unit Online Docs])
 
<center>[[Image:Component_Palette_Data Controls.png]]</center>
 
<center>[[Image:Component_Palette_Data Controls.png]]</center>
Data-aware components, which largely replicate the Standard and Additional groups but are applicable to Databases:
+
* Components installed by default as part of the LCL:
{| class="wikitable" cell-padding="10"
+
** [[TDBNavigator]], [[TDBText]], [[TDBEdit]], [[TDBMemo]], [[TDBImage]], [[TDBListBox]], [[TDBLookupListBox]], [[TDBComboBox]], [[TDBLookupComboBox]], [[TDBCheckBox]], [[TDBRadioGroup]], [[TDBCalendar]], [[TDBGroupBox]], [[TDBGrid]]
! style="width:150px"|Component || style="width:100px"|Usage            || style="width:100px"|Online Docs
+
 
|-
+
* Also on this tab:
|| TDBNavigator || [[TDBNavigator|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbnavigator.html Link]
+
** [[DateTimeCtrls Package#TDBDateTimePicker|TDBDateTimePicker]], which is included in Lazarus and installed automatically with make bigide, but not officially part of LCL.
|-
 
|| TDBText || [[TDBText|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbtext.html Link]
 
|-
 
|| TDBEdit || [[TDBEdit|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbedit.html Link]
 
|-
 
|| TDBMemo || [[TDBMemo|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbmemo.html Link]
 
|-
 
|| TDBImage || [[TDBImage|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbimage.html Link]
 
|-
 
|| TDBListbox || [[TDBListBox|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdblistbox.html Link]
 
|-
 
|| TDBComboBox || [[TDBComboBox|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbcombobox.html Link]
 
|-
 
|| TDBLookupCombobox || [[TDBLookupCombobox|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdblookupcombobox.html Link]
 
|-
 
|| TDBCheckbox || [[TDBCheckBox|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbcheckbox.html Link]
 
|-
 
|| TDBRadiogroup || [[TDBRadiogroup|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbradiogroup.html Link]
 
|-
 
|| TDBCalendar || [[TDBCalendar|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbcalendar.html Link]
 
|-
 
|| TDBGroupBox || [[TDBGroupBox|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbgroupbox.html Link]
 
|-
 
|| TDBGrid || [[TDBGrid|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/dbgrids/tdbgrid.html Link]
 
|}
 
Also on this tab: [[DateTimeCtrls Package#TDBDateTimePicker|TDBDateTimePicker]], which is included in Lazarus and installed automatically with make bigide, but not officially part of LCL.
 
  
 
==[[Data Access tab]]==
 
==[[Data Access tab]]==
 +
Tha palette '''Data Access''' contains components for access to local and in-memory database tables.
 
<center>[[Image:Component_Palette_Data Access.png]]</center>
 
<center>[[Image:Component_Palette_Data Access.png]]</center>
{| class="wikitable" cell-padding="10"
+
* Components installed by default
! style="width:150px"|Component || style="width:100px"|Usage            || style="width:100px"|Online Docs
+
** [[TDataSource]], [[TBufDataset]], [[TCSVDataSet]], [[TSdfDataSet]], [[TFixedFormatDataSet]], [[TDbf]], [[TParadox]], [[TMemDataset]]
|-
+
* Also on this page:
|| TDataSource || [[TDataSource|wiki]] ||
+
** TSqliteDataset, TSqliteDataset
|-
 
|| TBufDataset || [[TBufDataset|wiki]] ||
 
|-
 
|| TSdfDataset || [[TSdfDataSet|wiki]] ||
 
|-
 
|| TCSVDataset || [[TCSVDataset|wiki]] ||
 
|-
 
|| TFixedFormatDataset || [[TFixedFormatDataSet|wiki]] ||
 
|-
 
|| TDbf || [[TDbf|wiki]] ||
 
|-
 
|| TParadox || [[TParadox|wiki]] ||
 
|-
 
|| TMemDataset || [[TMemDataset|wiki]] ||
 
|-
 
|}
 
  
 
==[[System tab]]==
 
==[[System tab]]==
 
<center>[[Image:Component_Palette_System.png]]</center>
 
<center>[[Image:Component_Palette_System.png]]</center>
{| class="wikitable" cell-padding="10"
 
! style="width:150px"|Component || style="width:100px"|Usage            || style="width:100px"|Online Docs
 
|-
 
|| TTimer || [[TTimer|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/ttimer.html Link]
 
|-
 
|| TIdleTimer || [[TIdleTimer|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tidletimer.html Link]
 
|-
 
|| TLazComponentQueue || [[TLazComponentQueue|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/lresources/tlazcomponentqueue.html Link]
 
|-
 
|| THtmlHelpDatabase || [[THtmlHelpDatabase|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/lazhelphtml/thtmlhelpdatabase.html Link]
 
|-
 
|| THtmlBrowerHelpViewer || [[THtmlHelpBrowserHelpViewer|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/lazhelphtml/thtmlbrowserhelpviewer.html Link]
 
|-
 
|| TProcessUTF8 || [[TProcessUTF8|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/asyncprocess/tprocessutf8.html Link]
 
|-
 
|| TAsyncProcess || [[TAsyncProcess|wiki]] || [http://lazarus-ccr.sourceforge.net/docs/lcl/asyncprocess/tasyncprocess.html Link]
 
|-
 
|| TProcess || [[TProcess|wiki]] || [[doc:fcl/process/tprocess.html|Link]]
 
|-
 
|| TSimpleIPCClient || [[TSimpleIPCClient|wiki]] ||
 
|-
 
|| TSimpleICCServer || [[TSimpleIPCServer|wiki]] ||
 
|-
 
|| TXMLConfig || [[TXMLConfig|wiki]] ||
 
|-
 
|| TEventLog || [[TEventLog|wiki]] ||
 
|}
 
Also on this tab:
 
* [[TCHMHelpDatabase]] and [[TLHelpConnector]], included in Lazarus and installed automatically with make bigide
 
  
== [[SynEdit]] ==
+
* Components installed by default:
 +
** [[TTimer]], [[TIdleTimer]], [[TLazComponentQueue]], [[THTMLHelpDatabase]], [[THTMLBrowserHelpViewer]], [[TAsyncProcess]], [[TProcessUTF8]], [[TProcess|wiki]], [[TSimpleIPCClient]], [[TSimpleIPCServer]], [[TXMLConfig]], [[TEventLog]]
 +
* Also on this tab:
 +
** [[TCHMHelpDatabase]] and [[TLHelpConnector]], included in Lazarus and installed automatically with make bigide
 +
 
 +
==[[SQLdb_tab|SQLdb tab]]==
 +
Non-visible components for access to "large" database systems.
 +
 
 +
<center>[[Image:Component_Palette_SQLdb.png]]</center>
 +
 
 +
* Installed components:
 +
** [[TSQLQuery]], [[TSQLTransaction]], [[TSQLScript]], [[TSQLConnector]], [[TMSSQLConnection]], [[TSybaseConnection]], [[TPQConnection]], [[TPQTEventMonitor]], [[TOracleConnection]], [[TODBCConnection]],  [[TMySQL50Connection]], [[TMySQL51Connection]], [[TMySQL55Connection]], [[TMySQL56Connection]], [[TMySQL57Connection]], [[TSQLite3Connection]], [[TIBConnection]], [[TFBAdmin]], [[TFBEventMonitor]], [[TSQLDBLibraryLoader]]
 +
* No longer installed by default in 1.8.4.
 +
** [[TMySQL40Connection]], [[TMySQL41Connection]]
 +
 
 +
==[[Misc tab]]==
 +
<center>[[Image:Component_Palette_Misc.png]]</center>
 +
* Components installed by default:
 +
** [[TColorButton]], [[TSpinEdit]], [[TFloatSpinEdit]], [[TArrow]], [[TCalendar]], [[TEditButton]], [[TFileNameEdit]], [[TDirectoryEdit]], [[TDateEdit]], [[TCalcEdit]], [[TFileListBox]], [[TButtonPanel]], [[TShellTreeView]], [[TShellListView]], [[TXMLPropStorate]], [[TIniPropStorage]], [[TJsonPropStorage]], TIDEDialogLayoutStorage
 +
 
 +
==[[LazControls tab]]==
 +
The '''LazControls tab''' lists various (non related) Lazarus-specific components. They are needed by the IDE but can be used also by other projects.
 +
 
 +
<center>[[Image:Component_Palette_LazControls.png]]</center>
 +
 
 +
* Components installed:
 +
** [[TCheckBoxThemed]], [[TDividerBevel]], [[TExtendedNotebook]], [[LazControls#TListFilterEdit|TListFilterEdit]], [[LazControls#TListViewFilterEdit|TListViewFilterEdit]], [http://www.pp4s.co.uk/main/tu-form-level-graph.html TLvlGraphControl], [[TShortPathEdit]], [[TSpinEditEx]], [[TFloatSpinEditEx]], [[LazControls#TTreeFilterEdit|TTreeFilterEdit]], [[TExtendedTabControl]]
 +
 
 +
==[[RTTI tab]]==
 +
Specialized components for use with [[RTTI controls|runtime type information]].
 +
 
 +
<center>[[Image:Component Palette RTTI.png]]</center>
 +
 
 +
* Installed components:
 +
** [[TTIEdit]], [[TTIComboBox]], [[TTIButton]],[[TTICheckBox]], [[TTILabel]], [[TTIGroupBox]], [[TTIRadioGroup]], [[TTICheckGroup]], [[TTICheckListBox]], [[TTIListBox]], [[TTIMemo]], [[TTICalendar]], [[TTIImage]],[[TTIFloatSpinEdit]], [[TTISpinEdit]], [[TTITrackBar]], [[TTIProgressBar]], [[TTIMaskEdit]], [[TTIColorButton]], [[TMultiPropertyLink]], [[TTIPropertyGrid]], [[TTIGrid]]
 +
 
 +
== [[SynEdit_tab|SynEdit tab]] ==
 +
SynEdit is an advanced multi-line edit control, which is integrated into the Lazarus. It is the code editor of the Lazarus IDE and is available in the directory "lazarus/components/synedit". It supports Syntax Highlighting, code completion, code folding and includes exporters for html, tex and rtf. It is a fully custom drawn component, meaning that it doesn't wrap native controls of each platform and that no external library is required; this make SynEdit a crossplatform component. Note that the SynEdit available with Lazarus is a fork of the original SynEdit for Borland Delphi, Kylix  and C++Builder which can be found in [http://synedit.sourceforge.net synedit at sourceforge]
 +
 
 
<center>[[Image:Component_Palette_SynEdit.png]]</center>
 
<center>[[Image:Component_Palette_SynEdit.png]]</center>
SynEdit is an advanced multi-line edit control, which is integrated into the Lazarus. It is the code editor of the Lazarus IDE and is available in the directory "lazarus/components/synedit". It supports Syntax Highlighting, code completion, code folding and includes exporters for html, tex and rtf. It is a fully custom drawn component, meaning that it doesn't wrap native controls of each platform and that no external library is required; this make SynEdit a crossplatform component. Note that the SynEdit available with Lazarus is a fork of the original SynEdit for Borland Delphi, Kylix  and C++Builder which can be found in [http://synedit.sourceforge.net synedit at sourceforge]
 
  
{| class="wikitable" cell-padding="10"
+
* Components installed by default:
! style="width:180px"|Component || style="width:100px"|Usage            || style="width:100px"|Online Docs
+
** [[TSynEdit]], [[TSynCompletion]], [[TSynAutoComplete]], [[TSynMacroRecorder]], [[TSynExporterHTML]], [[TSynPluginSyncroEdit]], [[TSynPasSyn]], [[TSynFreePascalSyn]], [[TSynCppSyn]], [[TSynJavaSyn]], [[TSynJSSyn]], [[TSynPerlSyn]], [[TSynHTMLSyn]], [[TSynXMLSyn]], [[TSynLFMSyn]], [[TSSynDiffSyn]], [[TSynUNIXShellScriptSyn]], [[TSynCssSyn]], [[TSynPHPSyn]], [[TSynTeXSyn]], [[TSynSQLSyn]], [[TSynPythonSyn]], [[TSynVBSyn]], [[TSynAnySyn]], [[TSynMultiSyn]], [[TSynBatSyn]], [[TSynIniSyn]], [[TSynPoSyn]]
|-
+
** Additional highlighters are available on https://sourceforge.net/p/lazarus-ccr/svn/HEAD/tree/components/extrasyn/. This package can also be installed via [[Online_Package_Manager|Online package manager]]. They are collected in a separate palette '''SynEdit Highlighters'''.
|| TSynEdit || [[TSynEdit|wiki]] ||
+
 
|-
+
== [[Chart_tab|Chart tab]] ==
|| TSynAutoComplete || [[TSynAutoComplete|wiki]] ||
+
The '''Chart tab''' lists components for use with graphs and charts from the [[TAChart]] package. They are not part of the LCL, but most of them are installed by default.
|-
+
 
|| TSynExporterHTML || [[TSynExporterHTML|wiki]] ||
+
<center>[[Image:Component_Palette_Chart.png]]</center>
|-
+
 
|| TSynMacroRecorder || [[TSynMacroRecorder|wiki]] ||
+
* Components installed by default
|-
+
** [[TChart]], [[TAChart_documentation#List_source|TListChartSource]], [[TAChart_documentation#Random_source|TRandomChartSource]], ,[[TAChart_documentation#User-defined_source|TUserDefinedChartSource]], [[TAChart_documentation#Calculated_source|TCalculatedChartSource]], [[TAChart_documentation#Database_source|TDbChartSource]], [[TAChart_documentation#Tools|TChartToolset]], [[TAChart_documentation#Axis_transformations|TChartAxisTransformations]], [[TAChart_documentation#ChartStyles|TChartStyles]], [[TAChart_documentation#Legend_panel|TChartLegendPanel]], [[TAChart_documentation#Scroll_bars|TChartNavScrollBar]], [[TAChart_documentation#Navigation_panel|TChartNavPanel]], [[TAChart_documentation#Interval_source|TIntervalChartSource]], [[TAChart_documentation#Date-time_interval_source|TDateTimeIntervalChartSource]], [[TAChart_documentation#Chart_listbox|TChartListBox]], [[TAChart_documentation#Linked_extents|TChartExtentLink]], [[TAChart_documentation#Chart_image_list|TChartImageList]], [[TAChart_documentation#Chart_image_list|TChartCombobox]],
|| TSynMemo || [[TSynMemo|wiki]] ||
+
* Components installed only if other packages are available:
|-
+
**[[TAChart_documentation#AggPas_drawer|TChartGUIConnectorAggPas]], [[TAChart_documentation#BGRABitmap_drawer|TChartGUIConnectorBGRA]]
|| TSynPasSyn || [[TSynPasSyn|wiki]] ||
+
 
|-
+
== [[IPro_tab|iPro tab]] ==
|| TSynFreePascalSyn || [[TSynFreePascalSyn|wiki]] ||
+
The '''IPro''' palette lists components related to display of html pages. They do not belong to the IDE but are needed by the IDE to show the html-formatted popup coding hints and the chm help files.
|-
+
 
|| TSynCppSyn || [[TSynCppSyn|wiki]] ||
+
<center>[[Image:Component_Palette_IPro.png]]</center>
|-
 
|| TSynJavaSyn || [[TSynJavaSyn|wiki]] ||
 
|-
 
|| TSynPerlSyn || [[TSynPerlSyn|wiki]] ||
 
|-
 
|| TSynHTMLSyn || [[TSynHTMLSyn|wiki]] ||
 
|-
 
|| TSynXMLSyn || [[TSynXMLSyn|wiki]] ||
 
|-
 
|| TSynLFMSyn || [[TSynLFMSyn|wiki]] ||
 
|-
 
|| TSynUNIXShellScriptSyn || [[TSynUNIXShellScriptSyn|wiki]] ||
 
|-
 
|| TSynCssSyn || [[TSynCssSyn|wiki]] ||
 
|-
 
|| TSynPHPSyn || [[TSynPHPSyn|wiki]] ||
 
|-
 
|| TSynTeXSyn || [[TSynTeXSyn|wiki]] ||
 
|-
 
|| TSynSSQLSyn || [[TSynSQLSyn|wiki]] ||
 
|-
 
|| TSynPythonSyn || [[TSynPythonSyn|wiki]] ||
 
|-
 
|| TSynVBSyn || [[TSynVBSyn|wiki]] ||
 
|-
 
|| TSynAnySyn || [[TSynAnySyn|wiki]] ||
 
|-
 
|| TSynMultiSyn || [[TSynMultiSyn|wiki]] ||
 
|}
 
  
[[Category:Components]]
+
* Components installed:
[[Category:Lazarus]]
+
** [[TIpFileDataProvider]], [[TIpHtmlDataProvider]], [[TIpHttpDataProvider]], [[TIpHtmlPanel]]
[[Category:LCL]]
 

Revision as of 14:04, 8 October 2020

English (en) 日本語 (ja) русский (ru) 中文(中国大陆)‎ (zh_CN)
Please choose the component about which you would like to know more:

Forms

(See also the StdCtrls unit Online Docs)

l-ide-1.png

By default Form1 is added to the project when a new graphical application is created. Additional forms may be added to the project by clicking on the 'New Form' button on tool bar or selecting 'New Form' from the file menu.

Standard tab

(See also the StdCtrls unit Online Docs)

Component Palette Standard.png
  • Pointer (used to indicate you are not selecting a component)

Additional tab

(See also the ExtCtrls unit Online Docs)

Component Palette Additional.png

Common Controls tab

(See also the ComCtrls unit Online Docs)

Component Palette Common Controls.png
  • Controls which are not part of the LCL, but install in this tab:
    • TRichMemo
    • TDateTimePicker (included in Lazarus and installed automatically with make bigide, but not officially part of LCL)

Dialogs tab

(See also the Dialogs unit Online Docs)

Component Palette Dialogs.png
  • Several useful Dialog procedures or functions don't appear on the palette, but are easily used as direct calls from your source program.

Data Controls tab

Data-aware components, which largely replicate the Standard and Additional groups but are applicable to databases:

(See also the DBCtrls unit Online Docs)

Component Palette Data Controls.png
  • Also on this tab:
    • TDBDateTimePicker, which is included in Lazarus and installed automatically with make bigide, but not officially part of LCL.

Data Access tab

Tha palette Data Access contains components for access to local and in-memory database tables.

Component Palette Data Access.png

System tab

Component Palette System.png

SQLdb tab

Non-visible components for access to "large" database systems.

Component Palette SQLdb.png

Misc tab

Component Palette Misc.png

LazControls tab

The LazControls tab lists various (non related) Lazarus-specific components. They are needed by the IDE but can be used also by other projects.

Component Palette LazControls.png

RTTI tab

Specialized components for use with runtime type information.

Component Palette RTTI.png

SynEdit tab

SynEdit is an advanced multi-line edit control, which is integrated into the Lazarus. It is the code editor of the Lazarus IDE and is available in the directory "lazarus/components/synedit". It supports Syntax Highlighting, code completion, code folding and includes exporters for html, tex and rtf. It is a fully custom drawn component, meaning that it doesn't wrap native controls of each platform and that no external library is required; this make SynEdit a crossplatform component. Note that the SynEdit available with Lazarus is a fork of the original SynEdit for Borland Delphi, Kylix and C++Builder which can be found in synedit at sourceforge

Component Palette SynEdit.png

Chart tab

The Chart tab lists components for use with graphs and charts from the TAChart package. They are not part of the LCL, but most of them are installed by default.

Component Palette Chart.png

iPro tab

The IPro palette lists components related to display of html pages. They do not belong to the IDE but are needed by the IDE to show the html-formatted popup coding hints and the chm help files.

Component Palette IPro.png