Difference between revisions of "TCalendarDialog"

From Lazarus wiki
Jump to navigationJump to search
(→‎Example: Update sample code (CalendarDialog.FirstDayOfWeek))
 
Line 16: Line 16:
 
# Completion code:
 
# Completion code:
  
 +
<syntaxhighlight lang="pascal">
 +
uses
 +
  ExtDlgs,  // for the CalendarDialog
 +
  Calendar;  // for the DisplaySettings and FirstDayOfWeek enumerations
  
<syntaxhighlight lang="pascal">
 
 
procedure TForm1.Button1Click(Sender: TObject);
 
procedure TForm1.Button1Click(Sender: TObject);
 
var
 
var
    dt:tdatetime;
+
  dt: TDate;
    calendarSettings:TDisplaySettings;
 
 
begin
 
begin
  dt:= now;
+
   CalendarDialog1.Date := Now;
   CalendarDialog1.Date := dt;
+
   CalendarDialog1.Title := 'Select a date';
  calendarSettings:= [dsShowWeekNumbers,dsStartMonday];
+
   CalendarDialog1.DisplaySettings := [dsShowWeekNumbers];
   CalendarDialog1.Title:='Select a date';
+
  CalendarDialog1.FirstDayOfWeek := dowMonday; // in Laz 3.99+
   CalendarDialog1.DisplaySettings:= calendarSettings;
 
 
   if CalendarDialog1.Execute then
 
   if CalendarDialog1.Execute then
    begin
+
  begin
      dt:= CalendarDialog1.Date;
+
    dt := CalendarDialog1.Date;
      ShowMessage( 'The selected date is '+FormatDateTime( 'yyyy-mm-dd',dt ));
+
    ShowMessage('The selected date is ' + FormatDateTime('yyyy-mm-dd', dt));
    end
+
  end
 
   else
 
   else
     ShowMessage( 'Today is '+FormatDateTime( 'yyyy-mm-dd',dt ));
+
     ShowMessage('Today is ' + FormatDateTime('yyyy-mm-dd', dt));
end;
+
end;  
 
</syntaxhighlight>
 
</syntaxhighlight>
 
  
 
== See also ==
 
== See also ==

Latest revision as of 23:47, 9 September 2023

English (en) suomi (fi) français (fr) русский (ru) 中文(中国大陆)‎ (zh_CN)

TCalendarDialog tcalendardialog.png is a dialog that aids in selecting a date from a calendar. It can be found on the Dialogs tab of the Component Palette.

component-TCalendarDialog.png

The Execute method displays the calendar dialog. It returns true when user has selected date, false when user has aborted.


Example

  1. From the menu choose Project/New Project…
  2. Place a TCalendarDialog widget tcalendardialog.png on your form.
    It can be placed anywhere as it is not visible during program run time but only during design time.
    Component Palette Dialogs.png
    It is located on the Dialogs tab of the component palette
  3. Add a button tbutton.png in the form.
  4. The Object Inspector will display the properties of the object Button1. Click on the Events tab on the Object Inspector. Select the box to the right of OnClick: a smaller box with three dots (... ellipsis) appears. Click on this, you are taken automatically into the Source Editor and your cursor will be placed in a piece of code starting.
  5. Completion code:
uses
  ExtDlgs,   // for the CalendarDialog
  Calendar;  // for the DisplaySettings and FirstDayOfWeek enumerations

procedure TForm1.Button1Click(Sender: TObject);
var
  dt: TDate;
begin
  CalendarDialog1.Date := Now;
  CalendarDialog1.Title := 'Select a date';
  CalendarDialog1.DisplaySettings := [dsShowWeekNumbers];
  CalendarDialog1.FirstDayOfWeek := dowMonday;  // in Laz 3.99+
  if CalendarDialog1.Execute then
  begin
    dt := CalendarDialog1.Date;
    ShowMessage('The selected date is ' + FormatDateTime('yyyy-mm-dd', dt));
  end
  else
    ShowMessage('Today is ' + FormatDateTime('yyyy-mm-dd', dt));
end;

See also


LCL Components
Component Tab Components
Standard TMainMenu • TPopupMenu • TButton • TLabel • TEdit • TMemo • TToggleBox • TCheckBox • TRadioButton • TListBox • TComboBox • TScrollBar • TGroupBox • TRadioGroup • TCheckGroup • TPanel • TFrame • TActionList
Additional TBitBtn • TSpeedButton • TStaticText • TImage • TShape • TBevel • TPaintBox • TNotebook • TLabeledEdit • TSplitter • TTrayIcon • TControlBar • TFlowPanel • TMaskEdit • TCheckListBox • TScrollBox • TApplicationProperties • TStringGrid • TDrawGrid • TPairSplitter • TColorBox • TColorListBox • TValueListEditor
Common Controls TTrackBar • TProgressBar • TTreeView • TListView • TStatusBar • TToolBar • TCoolBar • TUpDown • TPageControl • TTabControl • THeaderControl • TImageList • TPopupNotifier • TDateTimePicker
Dialogs TOpenDialog • TSaveDialog • TSelectDirectoryDialog • TColorDialog • TFontDialog • TFindDialog • TReplaceDialog • TTaskDialog • TOpenPictureDialog • TSavePictureDialog • TCalendarDialog • TCalculatorDialog • TPrinterSetupDialog • TPrintDialog • TPageSetupDialog
Data Controls TDBNavigator • TDBText • TDBEdit • TDBMemo • TDBImage • TDBListBox • TDBLookupListBox • TDBComboBox • TDBLookupComboBox • TDBCheckBox • TDBRadioGroup • TDBCalendar • TDBGroupBox • TDBGrid • TDBDateTimePicker
Data Access TDataSource • TCSVDataSet • TSdfDataSet • TBufDataset • TFixedFormatDataSet • TDbf • TMemDataset
System TTimer • TIdleTimer • TLazComponentQueue • THTMLHelpDatabase • THTMLBrowserHelpViewer • TAsyncProcess • TProcessUTF8 • TProcess • TSimpleIPCClient • TSimpleIPCServer • TXMLConfig • TEventLog • TServiceManager • TCHMHelpDatabase • TLHelpConnector
Misc TColorButton • TSpinEdit • TFloatSpinEdit • TArrow • TCalendar • TEditButton • TFileNameEdit • TDirectoryEdit • TDateEdit • TTimeEdit • TCalcEdit • TFileListBox • TFilterComboBox • TComboBoxEx • TCheckComboBox • TButtonPanel • TShellTreeView • TShellListView • TXMLPropStorage • TINIPropStorage • TJSONPropStorage • TIDEDialogLayoutStorage • TMRUManager • TStrHolder
LazControls TCheckBoxThemed • TDividerBevel • TExtendedNotebook • TListFilterEdit • TListViewFilterEdit • TLvlGraphControl • TShortPathEdit • TSpinEditEx • TFloatSpinEditEx • TTreeFilterEdit • TExtendedTabControl •
RTTI TTIEdit • TTIComboBox • TTIButton • TTICheckBox • TTILabel • TTIGroupBox • TTIRadioGroup • TTICheckGroup • TTICheckListBox • TTIListBox • TTIMemo • TTICalendar • TTIImage • TTIFloatSpinEdit • TTISpinEdit • TTITrackBar • TTIProgressBar • TTIMaskEdit • TTIColorButton • TMultiPropertyLink • TTIPropertyGrid • TTIGrid
SQLdb TSQLQuery • TSQLTransaction • TSQLScript • TSQLConnector • TMSSQLConnection • TSybaseConnection • TPQConnection • TPQTEventMonitor • TOracleConnection • TODBCConnection • TMySQL40Connection • TMySQL41Connection • TMySQL50Connection • TMySQL51Connection • TMySQL55Connection • TMySQL56Connection • TMySQL57Connection • TSQLite3Connection • TIBConnection • TFBAdmin • TFBEventMonitor • TSQLDBLibraryLoader
Pascal Script TPSScript • TPSScriptDebugger • TPSDllPlugin • TPSImport_Classes • TPSImport_DateUtils • TPSImport_ComObj • TPSImport_DB • TPSImport_Forms • TPSImport_Controls • TPSImport_StdCtrls • TPSCustomPlugin
SynEdit TSynEdit • TSynCompletion • TSynAutoComplete • TSynMacroRecorder • TSynExporterHTML • TSynPluginSyncroEdit • TSynPasSyn • TSynFreePascalSyn • TSynCppSyn • TSynJavaSyn • TSynPerlSyn • TSynHTMLSyn • TSynXMLSyn • TSynLFMSyn • TSynDiffSyn • TSynUNIXShellScriptSyn • TSynCssSyn • TSynPHPSyn • TSynTeXSyn • TSynSQLSyn • TSynPythonSyn • TSynVBSyn • TSynAnySyn • TSynMultiSyn • TSynBatSyn • TSynIniSyn • TSynPoSyn
Chart TChart • TListChartSource • TRandomChartSource • TUserDefinedChartSource • TCalculatedChartSource • TDbChartSource • TChartToolset • TChartAxisTransformations • TChartStyles • TChartLegendPanel • TChartNavScrollBar • TChartNavPanel • TIntervalChartSource • TDateTimeIntervalChartSource • TChartListBox • TChartExtentLink • TChartImageList
IPro TIpFileDataProvider • TIpHtmlDataProvider • TIpHttpDataProvider • TIpHtmlPanel
Virtual Controls TVirtualDrawTree • TVirtualStringTree • TVTHeaderPopupMenu