- Managing public holidays
- Managing multi-selection
- Retrieve the multi-selection
- Managing the selection of a time period
- WLanguage functions
- Functions for managing bank holidays
- Calendar control management functions
- Properties specific to Calendar controls
Handling a Calendar control by programming
WINDEV, WEBDEV and WINDEV Mobile allow you to handle a Calendar control through programming. To do so, use the variable of Calendar control in the code.
The variable of the Calendar control corresponds to the selected date (if the control is multi-selection or with period selection, the variable corresponds to the first selected date). This date uses the format specified in the "Stored format: " control found in the "General" tab of the control description. This variable is a string.
The Calendar control can be handled through programming:
The Calendar control is associated with several WLanguage processes
- You can also handle a day of a Calendar control through programming. For more details, see Managing the calendar days.
- WINDEV, WEBDEV and WINDEV Mobile automatically manage the change of month or the change of year performed by the user.
Public holidays can be set programmatically. Several WLanguage functions (starting with BankHolidayXXX) are available.
is used to define the bank holidays displayed in a Calendar control. This function allows you to define the list of bank holidays that will be used. This function allows you to customize the public holidays according to the country and local regulations. This function must be used at the beginning of the application because it has a global effect on the application.
// Delete all public holidays
// Initialize the 11 public holidays common to the French regions and territories
BankHolidayAdd("0101") // 1st of January
BankHolidayAdd(bhEasterMonday) // Easter Monday
BankHolidayAdd("0501") // 1st of May
BankHolidayAdd("0508") // 8th of May
BankHolidayAdd(bhAscensionDay) // Ascension day
BankHolidayAdd(bhWhitMonday) // Whit Monday
BankHolidayAdd("0714") // 14th of July
BankHolidayAdd("0815") // 15th of August (Assumption)
BankHolidayAdd("1101") // All Saints' Day
BankHolidayAdd("1111") // 11th of November
BankHolidayAdd("1225") // Christmas
// Add 2 additional public holidays for the regions of Moselle and Alsace
BankHolidayAdd("1226" + CR + bhGoodFriday)
Retrieve the multi-selection
A Calendar control can allow for multiple selection: the Calendar control will allow you to select several dates. To do so, simply check " Multiselection" in the "Details" tab of the control description. You can also use the Multi-selection
// Browse the dates selected in the Calendar control
FOR I = 1 _TO_ CalendarSelectCount(CAL_Calendar1)
Managing the selection of a time period
A Calendar control allows you to select time periods: the Calendar control then allows you to select the start and end date of the time period. The days found between these two dates are automatically selected.
To allow the selection of a time period, " Range selection" must be checked in the "Details" tab of the control description window.
At runtime, simply click the Calendar control to select a time period: click first to select the start date and click again to select the end date of the time period.
To get the start and end date of the selected time period, simply use the StartDate
NbDays is int
NbDays = DateDifference(CAL_Calendar1.StartDate, CAL_Calendar1.EndDate) + 1
Info("Selected time period: from " + DateToString(CAL_Calendar1.StartDate) + ...
" to " + DateToString(CAL_Calendar1.EndDate) + ...
" which means " + NbDays + " day(s)")
Functions for managing bank holidays
The following functions are used to manage the bank holidays:
Calendar control management functions
The following functions are used to manage the Calendar control:
Properties specific to Calendar controls
The following properties are used to manage a Calendar control by programming.
|EndDate||Allows you to get and change the end date of a time period selected in a Calendar control.|
|Image||Allows you to find out and modify the background image of Calendar control.|
|MaxValue||Allows you to find out and modify the upper bound of Calendar control.|
|MemoryFormat||Allows you to find out and modify the format of the value returned by the Calendar control.|
|MinValue||Allows you to find out and modify the lower bound of Calendar control.|
|Multi-selection||Used to find out and modify the selection mode of a Calendar control|
|StartDate||Allows you to get and change the start date of a time period selected in a Calendar control.|
For a complete list of WLanguage properties that can be used with a Calendar control, see Properties associated with the Calendar control
This page is also available for…