Catalog · How the catalog works
KingCal
KingCal Delphi Calendar Component - Open Source Edition
- ★ 22 on GitHub
Anyone may press Interesting, signed in or not. It helps others find this project.
README
KingCalendar for Delphi
A fully-featured VCL calendar component library for Delphi 10.2 through 13, supporting Win32, Win64, and Win64x platforms. Open source under the MIT License.
Quick Install
Download and run the Windows installer — it detects every Delphi version on your machine, compiles the packages, and registers the components in each IDE automatically.
⬇ Download KingCalendarSetup.exe
Close the Delphi IDE before running the installer. An
installation.logis written to the install folder if you need to troubleshoot.
Screenshots
| Main Calendar | Popup Picker | Navigation Controls |
|---|---|---|
![]() |
![]() |
![]() |
| Spinner, Combo & Label Controls | Drag & Drop |
|---|---|
![]() |
![]() |
Components
All controls install directly into the Delphi IDE component palette.
| Component | Description |
|---|---|
TKingCalendar |
Core month-grid calendar control |
TKingPopup |
Non-visual popup calendar |
TKingDateDialog |
Edit control with built-in calendar button |
TDBKingDlg |
Database-bound date picker (TDataSource / TField) |
TKingNavigator |
Panel with prev/next month & year buttons |
TMonthBar |
Row of 12 month-selection buttons |
TKingLabel |
Label that tracks the selected date |
TKingWeekLabel |
Label that displays the ISO week number |
TMonthSpin / TMonthCombo |
Spin and combo controls for month navigation |
TYearSpin / TYearCombo |
Spin and combo controls for year navigation |
TDaySpin / TDayCombo |
Spin and combo controls for day navigation |
TKingDateSpin |
Inline date spin editor |
TKingTimeSpin |
Inline time spin editor |
TKingHMSpin |
Hour/minute/second field-by-field spin editor |
TKingMDYSpin |
Month/day/year field-by-field spin editor |
TDBKingCalendar |
Database-aware calendar grid |
TDBKingDateSpin |
Database-aware date spinner |
TDBKingTimeSpin |
Database-aware time spinner |
TDBKingMDYSpin |
Database-aware month/day/year selector |
TDBKingHMSpin |
Database-aware hour/minute/second selector |
TDBKingDateDialog |
Database-aware date dialog picker |
Delphi Version Support
The installer reads the BDS.EXE build number to identify the exact Delphi sub-version and enable only the platforms that release supports.
| Delphi Release | BDS Key | Package Suffix | Win32 | Win64 | Win64 Modern | WinARM64EC |
|---|---|---|---|---|---|---|
| Delphi 13.1 Florence | 37.0 | 370 |
✓ | ✓ | ✓ | ✓ |
| Delphi 13.0 Florence | 37.0 | 370 |
✓ | ✓ | ✓ | — |
| Delphi 12.3 Athens | 29.0 | 290 |
✓ | ✓ | ✓ | — |
| Delphi 12.2.1 Athens | 29.0 | 290 |
✓ | ✓ | ✓ | — |
| Delphi 12.2 Athens | 29.0 | 290 |
✓ | ✓ | ✓ | — |
| Delphi 12.1 Athens | 29.0 | 290 |
✓ | ✓ | ✓ | — |
| Delphi 12.0 Athens | 29.0 | 290 |
✓ | ✓ | — | — |
| Delphi 11.2 Alexandria | 28.0 | 280 |
✓ | ✓ | — | — |
| Delphi 11.1 Alexandria | 28.0 | 280 |
✓ | ✓ | — | — |
| Delphi 11.0 Alexandria | 28.0 | 280 |
✓ | ✓ | — | — |
| Delphi 10.4.2 Sydney | 27.0 | 270 |
— | ✓ | — | — |
| Delphi 10.4.1 Sydney | 27.0 | 270 |
— | ✓ | — | — |
| Delphi 10.4.0 Sydney | 27.0 | 270 |
— | ✓ | — | — |
| Delphi 10.3 Rio | 26.0 | 260 |
— | ✓ | — | — |
| Delphi 10.2 Tokyo | 25.0 | 250 |
— | ✓ | — | — |
Win64 Modern (Win64x) requires Delphi 12.1 or later. WinARM64EC requires Delphi 13.1 or later.
Manual Installation (Git Clone)
Use this method if you want the full source and prefer to manage builds yourself.
git clone https://github.com/K7LER/KingCal.git- In Delphi go to Tools → Options → Delphi Options → Library.
- Add
LIBD<ver>x64\RELEASE(andLIBD<ver>x32\RELEASEfor 32-bit targets) to the Library Path. - Add the
source\folder to the Browsing Path. - Open the group project for your version, e.g.
packages\13\D13All.groupproj. - Compile the runtime packages first:
KingCalendar370.dpk— base components + LiveBindings registrationKingCalendarDB370.dpk— database-aware components
- Compile the design-time packages:
dclKingCalendar370.dpk— base component registrationdclKingCalendarDB370.dpk— DB component registration
- Right-click each design-time package → Install.
Note: The DB components require both the base and DB packages. The installer handles this automatically.
See the Wiki for version-specific library folder names and detailed step-by-step instructions for each Delphi release.
Demo Projects
Five ready-to-compile demo projects are included for Delphi 10.2, 10.3, 10.4, and 13 under the Demos\ folder.
| Demo | Description |
|---|---|
| Main Demo | Full TKingCalendar feature tour — color sets, blocked days, events, annotations |
| Drag & Drop | Dragging selected dates between two calendars |
| Navigation | Wiring TKingNavigator, spin, and combo controls to a calendar |
| Date Picker | TKingPopup and TKingDateDialog in a real form |
| Start Day | Switching the first day of the week at runtime |
Key Features
- Full month-grid calendar with day selection, blocked days, flagged days, and per-cell color customization
- Nine built-in color sets (
ColorSet1–ColorSet9) configurable at design or runtime - High DPI and VCL Styles compatible
- Database-Aware Components —
TDBKingCalendar,TDBKingDateSpin,TDBKingTimeSpin,TDBKingMDYSpin,TDBKingHMSpin, andTDBKingDateDialogbind directly toTDataSource/TDataFieldfor dataset integration - LiveBindings Support — All date/time components register observable members for Delphi's LiveBindings framework, enabling visual data binding in the designer
- Color bar overlays for visualizing multi-day events or ranges
- No external dependencies — pure Object Pascal, no third-party runtime required
Documentation
- Project Website — feature overview, screenshots, and install guide
- Wiki — full component reference, property/event/method listings, and code examples
Documentation\kingcal30.rtf— original component reference guide (included in the install)
Contributing
Bug reports and pull requests are welcome. Please open an issue first for anything beyond a small fix.
Version History
| Version | Date | Notes |
|---|---|---|
| v2026.0325.1613 | 2026-03-25 | Fixed IDE crash on close (AV in UnhookEvent during destruction), replaced bitmap glyph resources with procedural drawing (DPI/theme aware), removed runtime dependency on KCAL32.RES/KDLG32.RES, regenerated palette icons for all 24 components, version numbering revision now uses HHMM 24-hour format |
| v2026.0325.0010 | 2026-03-25 | Added database-aware components (TDBKingCalendar, TDBKingDateSpin, TDBKingTimeSpin, TDBKingMDYSpin, TDBKingHMSpin, TDBKingDateDialog), LiveBindings support for all date/time controls, separate DB package (KingCalendarDB), architecture refactoring (KingTool split, TKingBaseDateEdit base class, hook mechanism modernization), multiple bug fixes |
| 26.1.1 | 2026-01-01 | Added Delphi 13 support; Windows installer |
| 2.1.1 | 2023-12-12 | Added Delphi 12 support |
| 2.0.9 | 2022-12-01 | Added Delphi 11 support |
| 2.0.8 | 2018-12-31 | VCL Styles navigator fix; Segoe UI default font; TKingWeekLabel added |
| 2.0.6 | 2018-12-30 | International locale date format support |
| 2.0.2 | 2018-12-29 | Added Delphi 10.3 Rio support |
| 2.0.0 | 2018-06-28 | Initial open-source release |
License
MIT License. See LICENSE for the full text.
Original component: Mark Lussier and AppVision © 1995–2000 Current maintainer: Lance Rasmussen — lancerasmussen@gmail.com
In June 2018, Mark Lussier gave Lance Rasmussen permission to open-source KingCalendar and publish it on GitHub.






