PC SOFT

ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Home | Sign in | English EN
  • Overview
  • Managing bank 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
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Overview
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.
Remarks:
  • 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.
Versions 15 and later
Java The Calendar control is now available for Java applications.
New in version 15
Java The Calendar control is now available for Java applications.
Java The Calendar control is now available for Java applications.
Versions 18 and later
iPhone/iPad The Calendar control is now available for iPhone/iPad applications.
Android The Calendar control is now available for Android applications.
WINDEVLinux The Calendar control is now available for WINDEV applications in Linux.
New in version 18
iPhone/iPad The Calendar control is now available for iPhone/iPad applications.
Android The Calendar control is now available for Android applications.
WINDEVLinux The Calendar control is now available for WINDEV applications in Linux.
iPhone/iPad The Calendar control is now available for iPhone/iPad applications.
Android The Calendar control is now available for Android applications.
WINDEVLinux The Calendar control is now available for WINDEV applications in Linux.
Versions 21 and later
Universal Windows 10 App The Calendar control is now available in Universal Windows 10 App mode.
New in version 21
Universal Windows 10 App The Calendar control is now available in Universal Windows 10 App mode.
Universal Windows 10 App The Calendar control is now available in Universal Windows 10 App mode.
Managing bank holidays
The bank holidays are managed through programming. Several WLanguage functions (starting with BankHolidayXXX) are available.
BankHolidayAdd 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 bank holidays according to the country and to the local regulations. This function must be used at the beginning of the application because it has a global effect on the application.
Example:
// Delete all bank holidays
BankHolidayDeleteAll()
// Initialize the 11 bank holidays common to the French regions and to the French 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 bank holidays for the regions of Moselle and Alsace
BankHolidayAdd("1226" + CR + bhGoodFriday)
Managing multi-selection
WINDEVUniversal Windows 10 AppAndroidJava

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 property.
To retrieve the selected dates, all you have to do is use the CalendarXXX functions of WLanguage.
Example:
// Browse the dates selected in the Calendar control
FOR I = 1 _TO_ CalendarSelectCount(CAL_Calendar1)
Trace(CalendarSelect(CAL_Calendar1, I))
END
WINDEVUniversal Windows 10 AppAndroidJava

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.

WINDEVUniversal Windows 10 AppAndroidJava If the "Today" button is displayed ("Details" tab of the description window), the context menu of this button proposes preset periods. The user can easily select the requested period.
To get the start and end date of the selected time period, simply use the StartDate and EndDate WLanguage properties.
Example:
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)")
WLanguage functions

Functions for managing bank holidays

The following functions are used to manage the bank holidays:
Versions 14 and later
BankHoliday
New in version 14
BankHoliday
BankHoliday
Indicates whether a day is a public holiday or not.
Versions 14 and later
BankHolidayAdd
New in version 14
BankHolidayAdd
BankHolidayAdd
Indicates that a day (or a list of days) is a public holiday.
Versions 14 and later
BankHolidayDeleteAll
New in version 14
BankHolidayDeleteAll
BankHolidayDeleteAll
Clears the list of all public holidays.

Calendar control management functions

The following functions are used to manage the Calendar control:
Versions 14 and later
CalendarPosition
New in version 14
CalendarPosition
CalendarPosition
Returns the month displayed in a Calendar control.
Versions 14 and later
CalendarSelect
New in version 14
CalendarSelect
CalendarSelect
Returns the date selected in a Calendar control.
Versions 14 and later
CalendarSelectCount
New in version 14
CalendarSelectCount
CalendarSelectCount
Returns the number of days selected in a Calendar control.
Versions 14 and later
CalendarSelectMinus
New in version 14
CalendarSelectMinus
CalendarSelectMinus
Deselects a date in a multi-selection Calendar control.
Versions 14 and later
CalendarSelectPlus
New in version 14
CalendarSelectPlus
CalendarSelectPlus
Selects a date in a Calendar control.
Properties specific to Calendar controls
The following properties are used to manage a Calendar control by programming.
MaxValueAllows you to find out and modify the upper bound of Calendar control.
MinValueAllows you to find out and modify the lower bound of Calendar control.
StartDateAllows you to get and change the start date of a time period selected in a Calendar control.
EndDateAllows you to get and change the end date of a time period selected in a Calendar control.
MemoryFormatAllows you to find out and modify the format of the value returned by the Calendar control.
ImageAllows you to find out and modify the background image of Calendar control.
Multi-selectionUsed to find out and modify the selection mode of 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.
Minimum version required
  • Version 14
This page is also available for…
Comments
Click [Add] to post a comment