Scheduler
TsgcHTMLComponent_Scheduler — a month or week scheduler that lays out dated events across a calendar grid as coloured blocks, in Delphi, C++ Builder and .NET.
TsgcHTMLComponent_Scheduler — a month or week scheduler that lays out dated events across a calendar grid as coloured blocks, in Delphi, C++ Builder and .NET.
Pick a View and CurrentDate, add events with start and end dates (or bind a dataset), then read the HTML property.
TsgcHTMLComponent_Scheduler
Bootstrap 5 card with a scheduler <table> + scoped CSS
Delphi, C++ Builder, .NET
Set View and CurrentDate, call AddEvent for each booking, then read HTML.
uses
sgcHTML_Enums, sgcHTML_Component_Scheduler;
var
oSched: TsgcHTMLComponent_Scheduler;
begin
oSched := TsgcHTMLComponent_Scheduler.Create(nil);
try
oSched.View := svMonth;
oSched.CurrentDate := Now;
oSched.StartHour := 8;
oSched.EndHour := 18;
oSched.AddEvent('Kickoff', EncodeDate(2026, 6, 12),
EncodeDate(2026, 6, 12), hcPrimary);
oSched.AddEvent('Sprint', EncodeDate(2026, 6, 15),
EncodeDate(2026, 6, 19), hcSuccess);
WebModule.Response := oSched.HTML; // card + scheduler grid
finally
oSched.Free;
end;
end;
// Or bind it straight to a dataset:
oSched.LoadFromDataSet(qryBookings, 'Subject', 'StartDate', 'EndDate');
// includes: sgcHTML_Enums.hpp, sgcHTML_Component_Scheduler.hpp
TsgcHTMLComponent_Scheduler *oSched = new TsgcHTMLComponent_Scheduler(NULL);
try
{
oSched->View = svMonth;
oSched->CurrentDate = Now();
oSched->StartHour = 8;
oSched->EndHour = 18;
oSched->AddEvent("Kickoff", EncodeDate(2026, 6, 12),
EncodeDate(2026, 6, 12), hcPrimary);
oSched->AddEvent("Sprint", EncodeDate(2026, 6, 15),
EncodeDate(2026, 6, 19), hcSuccess);
String html = oSched->HTML; // card + scheduler grid
}
__finally
{
delete oSched;
}
using esegece.sgcWebSockets;
var sched = new TsgcHTMLComponent_Scheduler();
sched.View = TsgcHTMLSchedulerView.svMonth;
sched.CurrentDate = DateTime.Now;
sched.StartHour = 8;
sched.EndHour = 18;
sched.AddEvent("Kickoff", new DateTime(2026, 6, 12),
new DateTime(2026, 6, 12), TsgcHTMLColor.hcPrimary);
sched.AddEvent("Sprint", new DateTime(2026, 6, 15),
new DateTime(2026, 6, 19), TsgcHTMLColor.hcSuccess);
string html = sched.HTML; // card + scheduler grid
The members you reach for most often.
View selects svMonth, svWeek or svDay; CurrentDate anchors the grid to a month or week.
Events holds items with Title, StartDate, EndDate, enum Color, Description and AllDay; each spans the days it covers.
AddEvent(aTitle, aStart, aEnd, aColor, aAllDay) appends one booking in a single call.
LoadFromDataSet(aDataSet, aTitleField, aStartField, aEndField) creates one event per row from your query.
StartHour and EndHour bound the visible time rows in the week view.
SchedulerID identifies the card; HTML returns the card, grid and the scoped scheduler CSS.