sgcUI en cinq minutes

sgcUI regroupe dix-sept produits d'interface natifs pour Delphi, C++Builder et .NET, installés par un seul installeur. Cette page installe l'essai, place sur une fiche une grille aux lignes mises à jour en direct, montre le même code en C++Builder et en C#, puis bascule toute l'application en mode sombre et de droite à gauche, avec un appel pour chacun.

Un installeur, 17 produits
VCL, FireMonkey, WinForms, WPF et Avalonia
Thème sombre et écriture de droite à gauche intégrés

Installer l'essai

Il n'y a pas d'installeur distinct par produit. Un essai Delphi et un essai C++Builder installent les dix-sept produits, et les versions .NET viennent de NuGet.

1. Lance l'installeur

Télécharge l'essai pour Delphi ou pour C++Builder et lance-le. L'essai installe chaque produit dans son édition d'essai, avec les démos et l'aide, et ne demande aucune licence.

2. Choisis tes IDE

Choisis les versions de Delphi ou de C++Builder dans lesquelles installer, de Delphi 7 et C++Builder 2007 jusqu'à RAD Studio 13. L'installeur compile les packages pour chacune et enregistre les packages de conception dans l'IDE.

3. Les dépendances sont automatiques

sgcGrid, sgcCharts, sgcDashboard et les autres contrôles reposent sur sgcUICore, et sgcReports repose sur sgcPDF. L'installeur les compile dans cet ordre, il n'y a donc rien à ajouter à la main.

4. Vérifie la palette

Chaque produit a sa propre page dans la palette d'outils : SGC Grid, SGC Navigation, SGC Toolbar, SGC Editors, SGC Charts, SGC Dashboard, SGC Gauges, SGC PivotGrid, SGC Planner, SGC Diagram, SGC Wizard, SGC Maps, sgcPDF, sgcReports, SGC RichEdit, SGC Spreadsheet et SGC Chat.

5. .NET depuis NuGet

Ajoute le package correspondant à ton framework d'interface, par exemple esegece.sgcGrid.WinForms, esegece.sgcGrid.Wpf or esegece.sgcGrid.Avalonia. Il installe pour toi esegece.sgcGrid et esegece.sgcUICore.

6. Community ou Registered

Chaque produit .NET est aussi livré avec un package Community gratuit portant le suffixe .Community, par exemple esegece.sgcGrid.Community. Les packages Registered ajoutent toutes les fonctionnalités, le code source complet et la licence commerciale. Pour Delphi, l'édition Delphi Community gratuite installe uniquement sgcGrid.

Ta première fiche sgcUI

Crée une application VCL, dépose un TsgcVCLGrid de la page de palette SGC Grid sur la fiche, double-clique sur la fiche pour obtenir FormCreate et saisis les lignes ci-dessous. Appuie sur F9. La même grille en C++Builder et dans une application .NET WinForms se trouve dans les autres onglets.

Unit1.pas
uses
  SysUtils, Classes, Controls, Forms,
  sgcGrid_Columns, sgcGrid_Data, sgcGrid_VCL;

type
  TForm1 = class(TForm)
    sgcVCLGrid1: TsgcVCLGrid;
    procedure FormCreate(Sender: TObject);
  end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  sgcVCLGrid1.Align := alClient;
  // the columns: field name, caption and data type
  sgcVCLGrid1.Columns.Add('Symbol', 'Symbol');
  sgcVCLGrid1.Columns.Add('Price', 'Price', gdtFloat).DisplayFormat := '0.00';
  sgcVCLGrid1.Columns.Add('Volume', 'Volume', gdtInteger);
  // one row per key, the values in column order
  sgcVCLGrid1.Data.AppendRow('MSFT', ['MSFT', 412.5, 1200]);
  sgcVCLGrid1.Data.AppendRow('AAPL', ['AAPL', 228.1, 3400]);
  // later, from any thread: update a row by key and field name
  sgcVCLGrid1.Data.UpdateRow('MSFT', ['Price', 'Volume'], [413.1, 1350]);
end;

AppendRow prend les valeurs dans l'ordre des colonnes. UpdateRow prend des noms de champs, donc un message qui ne porte qu'un prix ne modifie que le prix, et une clé qui n'existe pas encore est insérée. Les colonnes peuvent aussi être ajoutées à la conception avec l'éditeur de colonnes, et un TsgcGridSource_DataSet de la même page de palette remplit la grille à partir de n'importe quel TDataSet.

Unit1.cpp
#include <vcl.h>
#include "sgcGrid_Columns.hpp"
#include "sgcGrid_Data.hpp"
#include "sgcGrid_VCL.hpp"

void __fastcall CreateGrid(TForm *Form)
{
  TsgcVCLGrid *Grid = new TsgcVCLGrid(Form);
  Grid->Parent = Form;
  Grid->Align = alClient;
  // the columns: field name, caption and data type
  Grid->Columns->Add("Symbol", "Symbol", gdtText);
  Grid->Columns->Add("Price", "Price", gdtFloat)->DisplayFormat = "0.00";
  Grid->Columns->Add("Volume", "Volume", gdtInteger);
  // one row per key, the values in column order
  Grid->Data->AppendRow("MSFT", OPENARRAY(Variant,
    (Variant("MSFT"), Variant(412.5), Variant(1200))));
  Grid->Data->AppendRow("AAPL", OPENARRAY(Variant,
    (Variant("AAPL"), Variant(228.1), Variant(3400))));
}

C++Builder utilise les mêmes composants via les en-têtes et les bibliothèques que construit l'installeur C++Builder. Les tableaux ouverts de Delphi se passent avec la macro OPENARRAY. Ou laisse le code de côté, dépose le TsgcVCLGrid sur la fiche et définis les colonnes dans l'inspecteur d'objets.

Program.cs
// dotnet add package esegece.sgcGrid.WinForms
using System;
using System.Windows.Forms;
using esegece.sgcGrid;

internal static class Program
{
    [STAThread]
    private static void Main()
    {
        Application.EnableVisualStyles();
        Form oForm = new Form { Text = "My first sgcUI form", Width = 640, Height = 360 };

        TsgcWinFormsGrid oGrid = new TsgcWinFormsGrid { Dock = DockStyle.Fill };
        oGrid.Columns.Add("symbol", "Symbol");
        oGrid.Columns.Add("price", "Price", TsgcGridDataType.gdtFloat).DisplayFormat = "0.00";
        oGrid.Columns.Add("volume", "Volume", TsgcGridDataType.gdtInteger);
        oGrid.Data.AppendRow("MSFT", "MSFT", 412.5, 1200);
        oGrid.Data.AppendRow("AAPL", "AAPL", 228.1, 3400);
        oGrid.Data.UpdateRow("MSFT", new[] { "price", "volume" }, new object[] { 413.1, 1350 });
        oForm.Controls.Add(oGrid);

        Application.Run(oForm);
    }
}

Les noms de classes suivent ceux de Delphi : TsgcWinFormsGrid pour WinForms, TsgcWpfGrid pour WPF, avec les mêmes membres Columns et Data sur chacune. Les packages WinForms ciblent .NET Framework 4.7.2 ainsi que .NET 8, 9 et 10 pour Windows.

Un seul interrupteur pour toute l'application

Chaque contrôle sgcUI suit par défaut le thème et la direction de l'application. Un appel les repeint tous en mode sombre, et un appel met toute l'application en miroir pour l'arabe ou l'hébreu.

Theme.pas
uses
  Classes,
  sgcUICore_Theme, sgcUICore_Theme_VCL;

procedure ApplyAppSettings(aDark, aRightToLeft: Boolean);
begin
  // every sgcUI control whose Theme is utDefault repaints in the new theme;
  // True also themes the standard controls of every open form
  if aDark then
    sgcUISetApplicationTheme(utDark, True)
  else
    sgcUISetApplicationTheme(sgcUISystemTheme, True);
  // mirrors every open form and the sgcUI controls that follow it
  if aRightToLeft then
    sgcUISetApplicationBiDiMode(bdRightToLeft)
  else
    sgcUISetApplicationBiDiMode(bdLeftToRight);
end;

Les deux fonctions se trouvent dans sgcUICore_Theme. Ajoute sgcUICore_Theme_VCL (ou sgcUICore_Theme_FMX) quand tu passes True, afin que les contrôles standard de tes fiches soient eux aussi thémés. sgcUISystemTheme renvoie le choix clair ou sombre du système d'exploitation. Depuis C++Builder, inclus sgcUICore_Theme.hpp et fais les mêmes appels. Un contrôle dont le propre Theme vaut utLight, utDark ou utCustom le conserve.

Program.cs
using esegece.sgcUICore;

// follow the light or dark choice of Windows, and theme the forms too
sgcUIApplication.SetTheme(sgcUIApplication.SystemTheme(), true);

// or force dark mode
sgcUIApplication.SetTheme(TsgcUITheme.utDark);

// mirror every open form and the sgcUI controls that follow it
sgcUIApplication.SetRightToLeft(true);

sgcUIApplication est une classe statique de esegece.sgcUICore, partagée par WinForms, WPF et Avalonia. Par contrôle, les propriétés standard fonctionnent toujours : RightToLeft dans WinForms et FlowDirection dans WPF et Avalonia.

Démos, produits et documentation

Les démos de la suite sont des applications complètes qui utilisent plusieurs produits à la fois. Les sources des démos sont livrées avec l'essai, sous Demos\Suite.

Démos de la suite ERP, Factory, Fleet, Markets et Portfolio, compilées et prêtes à lancer.
Les 17 produits Standard : sgcGrid, sgcNavigation, sgcToolbar et sgcEditors. Professional ajoute sgcCharts, sgcDashboard et sgcGauges. Enterprise ajoute sgcPivotGrid, sgcPlanner, sgcDiagram, sgcWizard, sgcMaps, sgcPDF, sgcReports, sgcRichEdit, sgcSpreadsheet et sgcChat.
Comparaison des fonctionnalités Ce que fait chaque produit, côte à côte, pour Delphi, C++Builder et .NET.
Aide en ligne Installation, démarrages rapides par produit et par framework, thème de l'application et écriture de droite à gauche.
Tarifs Standard, Professional et Enterprise, ou n'importe quel produit seul.
Télécharger l'essai Installeurs Delphi et C++Builder, démos compilées et liste des packages NuGet.

Chaque produit a son propre démarrage rapide, listé sur la page de prise en main.

Un guide Getting Started pour chaque produit

Chaque produit sgcUI livre cinq démos QuickStart pour Delphi (VCL), du premier formulaire à une petite application complète, et un guide PDF qui les parcourt pas à pas.

sgcCharts Un premier graphique en courbes, les titres, les axes et une légende réglés dans l'Inspecteur d'objets, un flux de données en direct, les événements de clic, de réticule et de zoom, et une application de ventes liée à un dataset.
sgcChat Une première conversation, des bulles avec Markdown, les réponses et les réactions, un bot écho sur le panneau de chat, les thèmes, et une application d'assistant IA.
sgcDashboard Un premier tableau de bord avec des cartes KPI, la grille de tuiles à 12 colonnes, les données en direct, les thèmes, et un tableau de bord des ventes avec une tuile graphique.
sgcDiagram Un premier diagramme, les formes de logigramme, les événements de la vue avec annulation, les thèmes, et un éditeur de logigrammes avec export JSON, PNG et SVG.
sgcEditors Les premiers éditeurs sur un formulaire, la lecture et l'écriture des valeurs, les thèmes, la validation, et une application de contacts bâtie sur un formulaire de données.
sgcGauges Une première jauge radiale, les échelles et les plages colorées, les alarmes de seuil, les thèmes et les skins, et un moniteur de station de pompage.
sgcGrid Une première grille, les colonnes typées, l'édition sur place, une connexion à un dataset, et une application de commandes avec filtres, regroupement et totaux.
sgcMaps Une première carte avec des marqueurs, des marqueurs et des étiquettes ajoutés dans le code, les formes, les événements de la carte, et un localisateur de magasins.
sgcNavigation Une première barre de navigation, un menu construit dans le code, les onglets de documents, les thèmes et les styles, et un petit client de messagerie.
sgcPDF Un premier PDF d'une page, le dessin avec des polices, des formes et des images, un tableau sur plusieurs pages, un visualiseur PDF, et un générateur de factures.
sgcPivotGrid Une première grille pivot, les lignes, les colonnes et les valeurs, les totaux et les règles de format, une connexion à un dataset, et une application d'analyse des ventes.
sgcPlanner Un premier planificateur, ses vues et ses ressources, des rendez-vous modifiés à la souris et au clavier, un diagramme de Gantt et un tableau Kanban sur les mêmes données, et un planificateur d'équipe.
sgcReports Un premier rapport, une liste de données issue d'un dataset, les groupes et les totaux, l'export et l'impression, et une application de facturation.
sgcRichEdit Un premier document en texte enrichi, une barre d'outils de mise en forme, les styles, les tableaux et les images, les formats de fichier, et une application de publipostage.
sgcToolbar Une première barre d'outils, chaque type d'élément, les actions et une barre d'état, les thèmes, et un petit éditeur de texte.
sgcWizard Un premier assistant de trois pages, l'aspect des étapes et des boutons, la validation et les pages ignorées, les thèmes et les transitions, et une application d'onboarding.

Questions sur le démarrage rapide de sgcUI

Non. Un seul installeur couvre les dix-sept produits. L'essai installe chaque produit, et l'installeur sous licence affiche une case à cocher par produit et active ceux que couvre ta licence. Les produits qui en nécessitent un autre, comme sgcReports avec sgcPDF ou sgcSpreadsheet avec sgcGrid et sgcCharts, l'embarquent automatiquement.
Celui qui correspond à ton écran. La plupart des applications commencent par sgcGrid pour les données, puis ajoutent sgcCharts ou sgcDashboard pour le visuel, et sgcNavigation et sgcToolbar pour l'ossature. Comme ils partagent sgcUICore, ils partagent un même thème et une même direction.
Le modèle est le même, seule la classe du contrôle change : TsgcFMXGrid pour FireMonkey, TsgcWpfGrid pour WPF et TsgcAvaloniaGrid pour Avalonia, chacune avec les mêmes Columns et Data. L'aide propose un démarrage rapide par produit et par framework.
Meilleur rapport qualité-prix : All-AccessTous les produits eSeGeCe, Support Premium inclus, à partir de €1,059/an.
Voir les tarifs All-Access

Prêt à construire ta première fiche sgcUI ?

Télécharge l'essai, lance les démos de la suite, puis dépose une grille sur une fiche.