Twórz kompletne, nowoczesne interfejsy webowe bezpośrednio z Delphi, C++ Builder i .NET. sgcHTML to działający po stronie serwera framework komponentów z 89 gotowymi widżetami z obsługą danych — wykresy, siatki, formularze, pulpity, czat i wiele więcej — które wiążą się bezpośrednio z TDataSet, renderują się do znaczników Bootstrap 5 i pozostają interaktywne dzięki htmx. Ty piszesz Object Pascal lub C#, a sgcHTML pisze HTML, CSS i JavaScript.
sgcHTML zamienia istniejący back-end w Delphi, C++ Builder lub .NET w serwer aplikacji webowych. Każdy komponent to natywna klasa, która generuje HTML w Bootstrap 5; htmx utrzymuje stronę interaktywną i aktualizowaną na żywo bez ani jednej linii ręcznie pisanego JavaScript.
Każdy widżet to klasa — TsgcHTMLComponent_Chart, TsgcHTMLComponent_Grid, TsgcHTMLComponent_Form i 86 kolejnych. Ustaw jego właściwości, a następnie odczytaj właściwość HTML, aby uzyskać czyste znaczniki Bootstrap 5 gotowe do udostępnienia.
Umieść komponent TsgcHTMLEngine_Server (lub podłącz HTML do istniejącego TsgcWebSocketHTTPServer). Żądania trafiają do Twojej procedury obsługi OnCommandGet; odpowiadasz stroną zbudowaną z komponentów. Bez zewnętrznego stosu webowego.
sgcHTML nie jest związany z serwerem sgcWebSockets. Serwuj te same strony zbudowane z komponentów z dowolnej aplikacji Embarcadero WebBroker za pomocą TsgcHTMX_Engine_Server_WebBroker albo z serwera DataSnap z wypychaniem WebSocket na żywo na tym samym porcie co Twoje punkty końcowe REST.
Dodaj komponent TsgcHTMX_Engine_Server, a kliknięcia, wysyłki formularzy i aktualizacje na żywo trafiają do Twoich procedur obsługi zdarzeń w Pascalu/C#. Serwer podmienia fragmenty HTML w miejscu — wrażenie aplikacji SPA, bez całego łańcucha budowania JavaScript.
Ponieważ htmx działa na serwerze sgcWebSockets, możesz wypychać na żywo HTML do każdej podłączonej przeglądarki. Pulpity, monitory i okna czatu aktualizują się w momencie zmiany danych — sterowane przez serwer, bez odpytywania.
TsgcHTMLTemplate_Bootstrap opakowuje Twoją treść w kompletny responsywny dokument; TsgcHTMLThemeController i TsgcHTMLThemeBuilder zapewniają motywy jasny/ciemny oraz wspólny arkusz stylów. Bootstrap 5.3 i htmx dostarczane są jako wbudowane — bez CDN w czasie działania.
Grid, DataTable, Chart, Select, TreeView, Scheduler, Timeline i Form wiążą się bezpośrednio z TDataSet przez LoadFromDataSet / DataSource. Wskaż komponentowi zapytanie, a wyrenderuje on wiersze.
sgcHTML dostarcza wbudowane teksty interfejsu (przyciski, etykiety, komunikaty walidacji) w 17 językach: angielskim, hiszpańskim, francuskim, niemieckim, portugalskim, włoskim, niderlandzkim, szwedzkim, norweskim, polskim, czeskim, tureckim, rosyjskim, chińskim, japońskim, koreańskim i arabskim. Wybierz jeden za pomocą sgcHTMLSetLanguage, a komponenty renderują się w języku odwiedzającego z poprawnymi natywnymi pismami, w tym CJK, cyrylicą i alfabetem arabskim.
Każdy komponent przepuszcza swój dynamiczny tekst, atrybuty, wbudowany JavaScript i adresy URL przez automatyczne kodowanie HTML, atrybutów, JavaScript i URL oraz oczyszczanie adresów URL (sgcHTMLEncode, sgcHTMLAttrEncode, sgcJSEncode, sgcHTMLSanitizeURL), dzięki czemu dane użytkownika nie mogą wyrwać się ze swojego kontekstu i wstrzyknąć skryptu. Ochrona przed XSS i wstrzyknięciami działa bez dodatkowej pracy.
Od elementów nawigacji po siatki danych, wykresy, formularze, nakładki i czat AI — pełne słownictwo Bootstrap 5 jako natywne komponenty. Każdy odsyła do własnej strony z przykładami w Delphi, C++ Builder i .NET.
NavBar, Sidebar, Breadcrumb, Tabs, Pagination, Toolbar, TreeView, Stepper, Dropdown, ButtonGroup, ListGroup, DashboardLayout, Splitter.
Zobacz komponenty →Grid, DataTable, TreeGrid, PivotTable, Calendar, Scheduler, Timeline, ActivityFeed, KanbanBoard, Gantt — sortowalne, filtrowalne, eksportowalne, powiązane z zestawem danych.
Zobacz komponenty →Chart (Chart.js), CandlestickChart, Gauge, Heatmap, Sparkline, TreeMap, Diagram (przepływ SVG), Map (Leaflet), QRCode, Barcode — wizualizacje sterowane danymi z Twoich własnych zestawów danych.
Zobacz komponenty →Form, Edit, Memo, CheckBox, RadioGroup, Select, MultiSelect, InputGroup, AutoComplete, DatePicker, TimePicker, ColorPicker, Slider, FileUpload, RichEditor, Rating, SignaturePad, Transfer.
Zobacz komponenty →Panel, StatCard, Accordion, Carousel, Image, Avatar, Video, Badge, PDFViewer — karty, multimedia i kafelki KPI dla pulpitów.
Zobacz komponenty →Modal, Offcanvas, Popover, Toast, Snackbar, Notification, Spinner, Placeholder, ContextMenu, ProgressBar, JobProgress, LogViewer — okna dialogowe i powierzchnie statusu.
Zobacz komponenty →ChatBox, Chat (w stylu WhatsApp), AIChat z wyborem dostawcy, strumieniowaniem tokenów i cytowaniem źródeł RAG, Presence dla statusu online na żywo.
Zobacz komponenty →Login, SocialLogin (OAuth), OAuthCallback, WebAuthnLogin (klucze passkey), UserManagement, RolesPermissions — gotowe procesy logowania i ekrany administracyjne.
Zobacz komponenty →EngineServer, HTMXEngine, PageBuilder, TemplateBootstrap, ThemeController, ThemeBuilder, HTMXFragment, HTMXRouter — niewizualne elementy, które obsługują strony i utrzymują je na żywo.
Zobacz komponenty →Uruchom serwer HTTP, podłącz silnik htmx i odpowiadaj na żądania stroną zbudowaną z komponentów. To samo API w Delphi, C++ Builder i .NET.
uses
sgcWebSocket_Server, sgcHTMX_Engine_Server,
sgcHTML_Template_Bootstrap, sgcHTML_Component_Chart;
// 1. Start a server and attach the htmx engine
FServer := TsgcWSHTTPServer.Create(nil);
FServer.Port := 8080;
FServer.OnCommandGet := HandleGet;
FHTMX := TsgcHTMX_Engine_Server.Create(nil);
FHTMX.Server := FServer; // realtime htmx over WebSocket
FServer.Active := True;
// 2. Build the page from components
function TForm1.BuildDashboard: string;
var
oChart: TsgcHTMLComponent_Chart;
oPage: TsgcHTMLTemplate_Bootstrap;
begin
oChart := TsgcHTMLComponent_Chart.Create(nil);
oPage := TsgcHTMLTemplate_Bootstrap.Create(nil);
try
oChart.ChartType := ctBar;
oChart.AddLabel('Q1'); oChart.AddLabel('Q2'); oChart.AddLabel('Q3');
oChart.AddDataset('Revenue', [1200, 1900, 1500],
'#7C3AED', 'rgba(124,58,237,.25)', True);
oPage.Title := 'Dashboard';
oPage.BodyContent := oChart.HTML; // component -> HTML
Result := oPage.GetHTML; // full Bootstrap document
finally
oPage.Free;
oChart.Free;
end;
end;
// includes: sgcWebSocket_Server.hpp, sgcHTMX_Engine_Server.hpp,
// sgcHTML_Template_Bootstrap.hpp, sgcHTML_Component_Chart.hpp
// 1. Start a server and attach the htmx engine
FServer = new TsgcWSHTTPServer(this);
FServer->Port = 8080;
FServer->OnCommandGet = HandleGet;
FHTMX = new TsgcHTMX_Engine_Server(this);
FHTMX->Server = FServer; // realtime htmx over WebSocket
FServer->Active = true;
// 2. Build the page from components
String __fastcall TForm1::BuildDashboard()
{
TsgcHTMLComponent_Chart *oChart = new TsgcHTMLComponent_Chart(NULL);
TsgcHTMLTemplate_Bootstrap *oPage = new TsgcHTMLTemplate_Bootstrap(NULL);
try
{
oChart->ChartType = ctBar;
oChart->AddLabel("Q1"); oChart->AddLabel("Q2"); oChart->AddLabel("Q3");
oChart->AddDataset("Revenue", OPENARRAY(double, (1200, 1900, 1500)),
"#7C3AED", "rgba(124,58,237,.25)", true);
oPage->Title = "Dashboard";
oPage->BodyContent = oChart->HTML; // component -> HTML
return oPage->GetHTML(); // full Bootstrap document
}
__finally
{
delete oPage;
delete oChart;
}
}
using esegece.sgcWebSockets;
// 1. Start a server and attach the htmx engine
var server = new TsgcWebSocketHTTPServer();
server.Port = 8080;
server.OnCommandGet += HandleGet;
var htmx = new TsgcHTMX_Engine_Server();
htmx.Server = server; // realtime htmx over WebSocket
server.Active = true;
// 2. Build the page from components
string BuildDashboard()
{
var chart = new TsgcHTMLComponent_Chart();
chart.ChartType = TsgcHTMLChartType.ctBar;
chart.AddLabel("Q1"); chart.AddLabel("Q2"); chart.AddLabel("Q3");
chart.AddDataset("Revenue", new double[] { 1200, 1900, 1500 },
"#7C3AED", "rgba(124,58,237,.25)", true);
var page = new TsgcHTMLTemplate_Bootstrap();
page.Title = "Dashboard";
page.BodyContent = chart.HTML; // component -> HTML
return page.GetHTML(); // full Bootstrap document
}
Sięgnij po gotowe komponenty, gdy chcesz mieć widżet w jednej linijce, albo zejdź do warstwy węzłów, gdy potrzebujesz pełnej kontroli nad znacznikami.
89 widżetów TsgcHTMLComponent_*. Skonfiguruj właściwości, opcjonalnie powiąż zestaw danych, odczytaj HTML. Wiele z nich udostępnia także statyczną metodę pomocniczą Build(...) do jednolinijkowego użycia w treści.
Elementy podstawowe, takie jak TsgcHTMLContainer (z flagą Void dla znaczników samozamykających), TsgcHTMLCard, TsgcHTMLForm, TsgcHTMLField, TsgcHTMLButton i TsgcHTMLTable, składają się w dowolny układ, a następnie renderują się za pomocą TsgcHTMLTemplate_Bootstrap. Zestaw węzłów obejmuje także elementy budulcowe Bootstrap, takie jak TsgcHTMLModal, TsgcHTMLOffcanvas, TsgcHTMLAccordion, TsgcHTMLCarousel, TsgcHTMLToast, TsgcHTMLProgress, TsgcHTMLSpinner, TsgcHTMLListGroupNode, TsgcHTMLInputGroup, TsgcHTMLButtonGroupNode, TsgcHTMLRadio, TsgcHTMLBreadcrumb, TsgcHTMLNavbarNode i TsgcHTMLImage.
TsgcHTMLPageBuilder wraz z edytorem działającym w czasie projektowania pozwala składać strony w IDE, podczas gdy TsgcHTMLThemeController zarządza motywami jasny/ciemny w całej aplikacji.
Dzięki sgcCustomization HTML opisujesz aplikację, której potrzebujesz, a zespół eSeGeCe buduje ją dla Ciebie z komponentami sgcHTML + sgcWebSockets. Trzy jednorazowe pakiety od €149, a Ty otrzymujesz kompletny projekt, który możesz kompilować, rozszerzać i zmieniać jego wygląd przy użyciu licencjonowanych komponentów.
Masz już aplikację webową zbudowaną w IntraWeb, uniGUI, TMS WEB Core, Elevate Web Builder lub D2Bridge? Przewodniki krok po kroku przeprowadzą Cię przez przeniesienie jej do sgcHTML, z mapowaniem pojęć dla każdego frameworka. Dostępny jest także formularz pomocy w migracji, jeśli chcesz, aby nasz zespół pomógł zaplanować przenosiny lub wykonał je za Ciebie.
Połącz sgcHTML z naszymi pozostałymi bibliotekami komponentów dla Delphi, C++ Builder i .NET.
Komponenty klasy korporacyjnej: WebSocket, HTTP/2, MQTT, AMQP, WebRTC oraz AI/LLM. sgcHTML jest obsługiwany przez te same wysokowydajne serwery HTTP i WebSocket.
Dowiedz się więcej →Komponenty klienta i serwera QUIC oraz HTTP/3 dla Delphi, C++ Builder i .NET. Serwuj wyrenderowany interfejs sgcHTML przez HTTP/3, aby skrócić czas wczytywania strony w sieciach o zmiennej jakości.
Dowiedz się więcej →Korporacyjne podpisy cyfrowe — XAdES, PAdES, CAdES i ASiC z 10 dostawcami kluczy i 21 profilami krajów UE.
Dowiedz się więcej →Parser OpenAPI 3.0 i generator SDK. Zamień dowolną specyfikację OpenAPI w silnie typowanego klienta Delphi w kilka sekund.
Dowiedz się więcej →Natywne komponenty Windows Hello, odcisku palca i Windows Biometric Framework dla Delphi i C++ Builder.
Dowiedz się więcej →