Delphi, C++ Builder & .NET Fait partie de sgcUI

sgcNavigation, la barre de navigation latérale et en accordéon pour Delphi, C++ Builder & .NET

Donne à ton application un menu de navigation moderne en quelques minutes. Un seul contrôle sert de barre latérale ou d'accordéon, se replie en rail d'icônes avec une animation fluide, affiche des badges pour les compteurs non lus et s'utilise entièrement au clavier. Les thèmes clair et sombre sont intégrés.

VCL, FireMonkey, WinForms, WPF, AvaloniaDelphi 7 à 13 et C++ Builder 2007 à 13Édition .NET Community gratuiteInclus dans sgcUI Standard
Démo SidebarApp avec une barre latérale de 8 éléments dans les groupes Workspace et Business, Dashboard sélectionné et deux cartes KPI à droite

Tout ce qu'il faut à un menu d'application

Dix fonctionnalités qui transforment une liste de pages en une structure de navigation où tes utilisateurs se repèrent tout de suite.

Disposition et modes

Un seul contrôle couvre les deux styles de navigation des applications métier, ainsi que le rail étroit qui les relie.

Une barre latérale moderne dans un seul composant

Disposition et modes

Une barre latérale moderne dans un seul composant

La plupart des applications métier ont besoin de la même chose sur le bord gauche de la fiche principale : une liste de pages, regroupées par domaine, avec la page courante clairement repérée. Dépose un TsgcVCLNavigationBar sur la fiche, aligne-le à gauche et ajoute les éléments. Les en-têtes de groupe titrent les lignes qui suivent dans une couleur atténuée et ne sont jamais sélectionnés. La ligne sélectionnée reçoit un fond teinté de la couleur d'accentuation et une barre d'accentuation de 3 pixels, pour que l'utilisateur sache toujours où il se trouve. Les états survol et appui, les infobulles et les lignes désactivées sont tous dessinés pour toi, et la barre a l'air finie dès la première exécution.

  • Mode := nbmSidebar est le style par défaut
  • IsGroup transforme un élément en en-tête de groupe
  • ItemHeight et GroupHeight règlent la hauteur des lignes
  • La molette de la souris fait défiler les longues listes et ScrollIntoView affiche n'importe quel élément
  • De droite à gauche pour l'arabe et l'hébreu : les icônes et les libellés échangent leur place, et le retrait, les chevrons, les badges et le bouton de réduction sont en miroir
Lire la rubrique d'aide
Passe en accordéon avec une seule propriété

Disposition et modes

Passe en accordéon avec une seule propriété

Les écrans de paramètres et les consoles d'administration ont souvent plus de sections que l'écran n'en peut afficher. Mets Mode sur nbmAccordion et chaque en-tête de groupe devient une section qui ouvre et ferme les éléments situés dessous, avec un chevron à droite et des enfants en retrait. Par défaut, un seul groupe est ouvert à la fois, ce qui garde un long menu court. Active AllowMultiExpand quand les utilisateurs ont besoin de plusieurs sections ouvertes ensemble. Les éléments, les événements et ton code restent exactement les mêmes. Les éléments placés avant le premier en-tête n'appartiennent à aucun groupe et sont toujours affichés, ce qui convient à une entrée Accueil ou Tableau de bord au-dessus des sections.

  • Mode := nbmAccordion bascule toute la barre
  • Expanded ouvre ou ferme un groupe depuis le code
  • AllowMultiExpand permet de garder plusieurs groupes ouverts
  • Indent règle le retrait des éléments enfants
Lire la rubrique d'aide

Disposition et modes

Repli en rail d'icônes, animé

Les barres latérales larges prennent la place des données que tes utilisateurs sont venus voir. Active Collapsed et la barre passe de sa largeur déployée à un rail d'icônes étroit en 150 ms environ. Dans le rail, seules les icônes sont dessinées, le libellé devient l'infobulle, les en-têtes de groupe deviennent des lignes de séparation et les badges deviennent des points, donc rien d'important n'est perdu. La barre fixe elle-même sa largeur, de sorte que le contenu à côté suit simplement avec alClient. Lie la propriété Collapsed à un bouton hamburger, à un réglage utilisateur ou à la largeur de la fiche, et le rail s'ouvre et se ferme de la même façon en mode barre latérale et en mode accordéon.

  • Collapsed bascule entre les deux largeurs
  • ExpandedWidth (220) et CollapsedWidth (56) en pixels logiques
  • AnimateCollapse active ou désactive l'animation
  • OnCollapsedChange t'informe quand le rail s'ouvre ou se ferme
Lire la rubrique d'aide

Disposition et modes

Pilote tes pages depuis la sélection

Une barre de navigation n'a d'intérêt que si elle change ce que voit l'utilisateur. Clique ou touche un élément activé et la barre le sélectionne, déclenche OnItemClick puis exécute le OnClick de l'élément. OnSelectionChange est l'endroit unique où afficher la page correspondante, par exemple l'onglet d'un TPageControl aux onglets masqués, exactement comme est construite la démo SidebarApp. SelectedIndex lit et définit la page courante depuis le code. Désactive un élément que l'utilisateur ne peut pas encore atteindre, explique pourquoi dans son infobulle, ou masque-le pour les rôles qui ne doivent pas le voir, et la logique de sélection continue de fonctionner.

  • SelectedIndex est la page choisie par l'utilisateur
  • OnSelectionChange change la page ou le cadre
  • OnItemClick sur la barre et OnClick par élément
  • Enabled, Hint et Visible par élément
Lire la rubrique d'aide

Des éléments qui informent

Les lignes portent plus qu'un libellé : une icône, un compteur et un lien vers la logique que tu as déjà écrite.

Des badges pour les compteurs non lus

Des éléments qui informent

Des badges pour les compteurs non lus

Les utilisateurs doivent voir qu'un élément demande leur attention avant d'ouvrir la page. Donne un Badge à un élément, par exemple un compteur de non lus ou le mot Nouveau, et la barre le dessine en pilule de la couleur d'accentuation à droite de la ligne, avec un texte noir ou blanc, selon le plus lisible. Définis-le depuis le code chaque fois que la valeur change et la barre se redessine d'elle-même. Dans le rail replié, le badge devient un point sur l'icône. Comme le badge est un simple texte, la même propriété couvre les compteurs, les libellés courts et les mots d'état sans code de dessin personnalisé.

  • Badge est un texte court par élément
  • Un Badge vide ne dessine rien
  • La pilule utilise l'accentuation du thème ou ton AccentColor
  • À combiner avec Hint pour expliquer le compteur
Lire la rubrique d'aide
Icônes depuis ta liste d'images ou un glyphe

Des éléments qui informent

Icônes depuis ta liste d'images ou un glyphe

Chaque ligne a un emplacement d'icône. Pointe la barre vers la liste d'images que tu utilises déjà et définis ImageIndex par élément, et les images masquées ou 32 bits sont converties une seule fois puis mises en cache jusqu'à ce que la liste change. Pas encore de liste d'images ? Définis plutôt un Glyph, une lettre ou un court symbole qui suit les couleurs du thème, comme le font les démos. Un élément désactivé dessine son image à 40 pour cent d'opacité, pour que l'état soit clair d'un coup d'œil. Tu peux mélanger les deux : les éléments avec un index d'image affichent l'image et les autres se rabattent sur leur glyphe, ce qui permet d'ajouter les icônes progressivement.

  • Images et ImageIndex pour les listes d'images
  • Glyph pour une lettre ou un symbole sans images
  • VCL dessine les images à leur propre taille
  • Listes d'images FireMonkey à partir de Delphi XE8
Lire la rubrique d'aide

Des éléments qui informent Enregistrée uniquement

Relie les éléments à tes TAction

Les applications construites sur une TActionList ont déjà leurs commandes, leurs libellés et leurs règles d'activation au même endroit. Relie un élément à n'importe quelle TAction VCL ou FireMonkey via sa propriété Action et ses Caption, Enabled, Visible, Hint et ImageIndex suivent l'action. Un clic exécute l'action avec la barre comme ActionComponent, et OnUpdate s'exécute en temps libre, donc un élément se grise dès que son action est désactivée. En .NET, Command et CommandParameter font le même travail. Une seule TActionList peut piloter le menu, la barre d'outils et les raccourcis clavier de la fiche.

  • Action relie un élément à n'importe quelle TBasicAction
  • Le OnClick d'un élément s'exécute à la place de l'action
  • Compilé sous SGC_NAVIGATION_ACTIONS
  • .NET : Command et CommandParameter avec ICommand

Community : affecte le OnClick de l'élément ou le OnItemClick de la barre à la place d'une action.

Lire la rubrique d'aide

Clavier, thèmes et rendu

Les détails qui donnent à la barre un aspect natif et la gardent cohérente avec le reste de ton application.

Navigation d'abord au clavier

Clavier, thèmes et rendu

Les utilisateurs avancés changent de page sans souris, et les audits d'accessibilité l'exigent. La barre prend le focus avec Tab et déplace une ligne ayant le focus parmi les éléments visibles et activés : Haut et Bas avancent, Début et Fin sautent, Entrée ou Espace active. Dans l'accordéon, Gauche replie un groupe et Droite le déploie. Le rectangle de focus en pointillés n'apparaît que lorsque le clavier est utilisé, et le focus reste distinct de la page sélectionnée. Les mêmes touches fonctionnent dans la barre FireMonkey via CanFocus, donc les utilisateurs de bureau retrouvent le même comportement sur toutes les plateformes.

  • TabStop est activé par défaut pour la barre VCL
  • FocusedIndex du modèle est la ligne du clavier
  • SelectedIndex reste la page choisie
  • Les infobulles affichent le libellé dans le rail replié
Lire la rubrique d'aide
Clair, sombre et ta couleur d'accentuation

Clavier, thèmes et rendu

Clair, sombre et ta couleur d'accentuation

Un menu qui ignore le thème de l'application paraît plaqué. Theme définit les couleurs de surface, de bordure, de texte, d'en-tête de groupe, de survol et d'accentuation à partir des jetons partagés de sgcUICore, donc une barre et un sgcDashboard avec le même Theme s'accordent exactement. AccentColor remplace l'accentuation par la couleur de ta marque pour la barre de sélection, le rectangle de focus et les badges. Une barre hébergée dans une tuile de tableau de bord suit d'elle-même le thème du tableau de bord. Change le thème à l'exécution et la barre se redessine aussitôt, prête pour un interrupteur de mode sombre dans ta page de paramètres.

  • Theme : utDefault (par défaut, suit le thème de l'application), utLight ou utDark
  • AccentColor comme valeur $AARRGGBB, 0 conserve l'accentuation du thème
  • Les mêmes jetons que tous les produits sgcUI
  • Les tuiles du tableau de bord transmettent leur thème à la barre
Lire la rubrique d'aide
Dessine la barre sans fenêtre

Clavier, thèmes et rendu

Dessine la barre sans fenêtre

La documentation, les tests visuels et les back-ends web ont parfois besoin d'une image du menu, pas du menu lui-même. Le moteur de rendu de sgcNavigation_Render dessine un TsgcNavigationModel sans fenêtre et sans VCL ni FireMonkey, donc un programme console, un service ou un serveur produit la même barre en PNG ou en SVG. L'unité se compile sur toutes les plateformes, Linux64 compris, et un paramètre d'échelle donne des images nettes pour les écrans haute densité. Passe ta liste d'images au moteur de rendu et l'image exportée affiche les mêmes icônes que l'application en cours d'exécution.

  • sgcNavigationSaveToPNG écrit un fichier ou un flux PNG
  • sgcNavigationSaveToSVG écrit la même barre en SVG
  • sgcNavigationRender dessine sur n'importe quel canevas sgcUICore
  • Largeur et hauteur en pixels logiques, multipliées par l'échelle
Lire la rubrique d'aide

Découvre sgcNavigation en action

sgcNavigation dans les démos de la suite sgcUI : des applications complètes qui fonctionnent hors ligne avec des données simulées intégrées.

Qui construit avec sgcNavigation

Une structure moderne pour les applications ERP et d'administration

Tu as des dizaines de fiches existantes et une fenêtre principale qui les ouvre encore depuis une barre de menus. Place une barre latérale à gauche, un élément par domaine, et laisse OnSelectionChange changer les onglets d'un TPageControl aux onglets masqués. Les badges montrent les commandes en attente ou les messages non lus, et le rail d'icônes rend leur espace aux fiches. Lance SidebarApp pour voir ce modèle fonctionner avec une page sgcDashboard.

  • Mode barre latérale
  • Badges
  • Repli en rail d'icônes
Lance la démo SidebarApp

Écrans de paramètres et consoles d'administration

Les écrans de configuration regroupent des dizaines de pages sous quelques titres comme Sales, Inventory et Admin. L'accordéon garde une section ouverte à la fois, ou plusieurs avec AllowMultiExpand, et les liens d'action réutilisent les commandes et les règles d'activation de ta TActionList. Les utilisateurs au clavier parcourent les sections avec les flèches. La démo Accordion montre trois groupes, un interrupteur de déploiement et un journal de clics.

  • Mode accordéon
  • Liens d'action
  • Navigation au clavier
Lance la démo Accordion

La même navigation sur toutes les plateformes

Une application FireMonkey qui tourne sous Windows, macOS, iOS et Android ne devrait pas avoir besoin d'un menu différent sur chacune. TsgcFMXNavigationBar a les mêmes éléments, modes et événements que la barre VCL, et les barres .NET pour WinForms, WPF et Avalonia suivent les mêmes noms. Les équipes qui livrent une application de bureau Delphi et un outil .NET gardent un seul modèle mental. SidebarFMX est la version FireMonkey de la démo de la barre latérale.

  • Barre FireMonkey
  • Thèmes
  • Barres .NET
Lance la démo SidebarFMX

Une barre de navigation en quelques lignes

La même API en Delphi, C++ Builder et C# : une barre en accordéon avec des groupes, un badge, un élément désactivé et un bouton Collapse.

procedure TMainForm.CreateNavigation;
var
  oItem: TsgcNavigationItem;
begin
  // an accordion bar on the left, dark theme, several groups open at once
  FNav := TsgcVCLNavigationBar.Create(Self);
  FNav.Parent := Self;
  FNav.Align := alLeft;
  FNav.Mode := nbmAccordion;
  FNav.AllowMultiExpand := True;
  FNav.Theme := utDark;
  // a group header (third parameter True), then the items under it
  FNav.Items.AddItem('Sales', '', True);
  FNav.Items.AddItem('Orders', 'O');
  FNav.Items.AddItem('Invoices', 'I').Badge := '3';
  FNav.Items.AddItem('Admin', '', True);
  oItem := FNav.Items.AddItem('Users', 'U');
  oItem.Hint := 'Manage the users';
  oItem := FNav.Items.AddItem('Billing', 'B');
  oItem.Enabled := False;
  FNav.SelectedIndex := 1;
  FNav.OnItemClick := NavItemClick;
  FNav.OnSelectionChange := NavSelectionChange;
  // a Collapse button folds the bar into an icon rail with an animation
  FNav.AnimateCollapse := True;
  FButton.Caption := 'Collapse';
  FButton.OnClick := ButtonClick;
end;

procedure TMainForm.NavItemClick(Sender: TObject; aItem: TsgcNavigationItem);
begin
  Caption := 'Clicked: ' + aItem.Caption;
end;

procedure TMainForm.NavSelectionChange(Sender: TObject);
begin
  FPanel.Caption := FNav.Items[FNav.SelectedIndex].Caption + ' page';
end;

procedure TMainForm.ButtonClick(Sender: TObject);
begin
  FNav.Collapsed := not FNav.Collapsed;
end;
#include <vcl.h>
#include <Vcl.ExtCtrls.hpp>
#include "sgcUICore_Theme.hpp"
#include "sgcNavigation_Model.hpp"
#include "sgcNavigation_VCL.hpp"

class TNavHandler : public TObject
{
public:
  TsgcVCLNavigationBar *Nav;
  TPanel *Content;
  void __fastcall ItemClick(TObject *Sender, TsgcNavigationItem *aItem);
  void __fastcall SelectionChange(TObject *Sender);
  void __fastcall CollapseClick(TObject *Sender);
};

void __fastcall TNavHandler::ItemClick(TObject *Sender, TsgcNavigationItem *aItem)
{
  Content->Caption = "Clicked: " + aItem->Caption;
}

void __fastcall TNavHandler::SelectionChange(TObject *Sender)
{
  Content->Caption = Nav->Items->Items[Nav->SelectedIndex]->Caption + " page";
}

void __fastcall TNavHandler::CollapseClick(TObject *Sender)
{
  Nav->Collapsed = !Nav->Collapsed;   // animated fold into an icon rail
}

void __fastcall CreateNavigation(TForm *Form, TNavHandler *Handler)
{
  // an accordion bar on the left, dark theme, several groups open at once
  TsgcVCLNavigationBar *Nav = new TsgcVCLNavigationBar(Form);
  Nav->Parent = Form;
  Nav->Align = alLeft;
  Nav->Mode = nbmAccordion;
  Nav->AllowMultiExpand = true;
  Nav->AnimateCollapse = true;
  Nav->Theme = utDark;
  // a group header (third parameter true), then the items under it
  Nav->Items->AddItem("Sales", "", true);
  Nav->Items->AddItem("Orders", "O", false);
  Nav->Items->AddItem("Invoices", "I", false)->Badge = "3";
  Nav->Items->AddItem("Admin", "", true);
  Nav->Items->AddItem("Users", "U", false)->Hint = "Manage the users";
  Nav->Items->AddItem("Billing", "B", false)->Enabled = false;
  Nav->SelectedIndex = 1;
  TPanel *Content = new TPanel(Form);
  Content->Parent = Form;
  Content->Align = alClient;
  Handler->Nav = Nav;
  Handler->Content = Content;
  Nav->OnItemClick = Handler->ItemClick;
  Nav->OnSelectionChange = Handler->SelectionChange;
  TButton *Button = new TButton(Form);
  Button->Parent = Content;
  Button->Caption = "Collapse";
  Button->OnClick = Handler->CollapseClick;
}
using System;
using System.Windows.Forms;
using esegece.sgcUICore;
using esegece.sgcNavigation;

internal class MainForm : Form
{
    private readonly TsgcWinFormsNavigationBar Nav = new TsgcWinFormsNavigationBar();
    private readonly Label lblPage = new Label { Dock = DockStyle.Fill };
    private readonly Button btnCollapse = new Button { Text = "Collapse", Dock = DockStyle.Top };

    public MainForm()
    {
        // an accordion bar on the left, dark theme, several groups open at once
        Nav.Dock = DockStyle.Left;
        Nav.Mode = TsgcNavigationMode.nbmAccordion;
        Nav.AllowMultiExpand = true;
        Nav.AnimateCollapse = true;
        Nav.Theme = TsgcUITheme.utDark;
        // a group header (third parameter true), then the items under it
        Nav.Items.AddItem("Sales", "", true);
        Nav.Items.AddItem("Orders", "O");
        Nav.Items.AddItem("Invoices", "I").Badge = "3";
        Nav.Items.AddItem("Admin", "", true);
        Nav.Items.AddItem("Users", "U").Hint = "Manage the users";
        Nav.Items.AddItem("Billing", "B").Enabled = false;
        Nav.SelectedIndex = 1;
        Nav.OnItemClick = (sender, item) => Text = "Clicked: " + item.Caption;
        Nav.OnSelectionChange = sender => lblPage.Text = Nav.Items[Nav.SelectedIndex].Caption + " page";
        // the Collapse button folds the bar into an icon rail with an animation
        btnCollapse.Click += (s, e) => Nav.Collapsed = !Nav.Collapsed;
        Controls.Add(lblPage);
        Controls.Add(btnCollapse);
        Controls.Add(Nav);
    }
}
dotnet add package esegece.sgcNavigation.WinForms

Lance les démos de sgcNavigation

Les démos SidebarApp et Accordion sont fournies pour VCL et C++ Builder, avec en plus une version FireMonkey pour Delphi, et dans l'édition .NET sous forme de projets WinForms, WPF et Avalonia.

SidebarApp

SidebarApp

Une barre latérale qui pilote un contrôle de pages aux onglets masqués, avec des icônes, un badge, un élément désactivé, un bouton Collapse, une liste de thèmes et une page KPI sgcDashboard. Elle prouve le modèle de structure d'application de bout en bout.

Accordion

Enregistrée uniquement Accordion

Trois groupes, Sales, Inventory et Admin, un interrupteur AllowMultiExpand, des liens d'action et un journal de clics. Elle utilise des liens d'action, donc elle demande l'édition Enregistrée ou l'essai.

SidebarFMX

La démo de la barre latérale construite avec TsgcFMXNavigationBar pour FireMonkey, pour Delphi uniquement. Les mêmes éléments, modes et événements que la version VCL, prête pour Windows, macOS et les cibles mobiles.

Démos compilées

Des exécutables prêts à lancer pour chaque produit sgcUI, rien à installer.

Télécharger sgcUI_bin.zip →

Où sgcNavigation est inclus

sgcNavigation est dans toutes les éditions sgcUI, à partir de Standard, et il est aussi vendu seul. sgcNavigation est également inclus dans le pack All-Access.

sgcNavigation, package seul

€149 / développeur, code source complet, 1 an de mises à jour.

Acheter sgcNavigation → Voir les tarifs →

sgcUI Standard

sgcNavigation, sgcGrid, sgcToolbar et sgcEditors, à partir de €380.

Voir Standard →

sgcUI Professional

Standard plus sgcCharts, sgcDashboard et sgcGauges, à partir de €529.

Voir Professional →

sgcUI Enterprise

Les 14 produits sgcUI, à partir de €699.

Voir Enterprise →

L'édition Community gratuite (esegece.sgcNavigation.Community sur NuGet) offre tout sauf les liens d'action des éléments.

FonctionnalitéCommunity (gratuite)Enregistrée
Modes barre latérale et accordéon✓✓
Repli animé en rail d'icônes✓✓
Icônes, glyphes et badges✓✓
Navigation au clavier✓✓
Thèmes clair et sombre, couleur d'accentuation✓✓
Rendu PNG et SVG sans interface✓✓
Liens d'action (Delphi) et Command (.NET)−✓

Frameworks et plateformes pris en charge

Composants de sgcNavigation

ComposantCible
TsgcVCLNavigationBarDelphi et C++ Builder, VCL (sgcNavigation_VCL)
TsgcFMXNavigationBarDelphi et C++ Builder, FireMonkey (sgcNavigation_FMX)
TsgcNavigationItem, TsgcNavigationItems, TsgcNavigationModelModèle indépendant du framework (sgcNavigation_Model)
TsgcWinFormsNavigationBar.NET, WinForms
TsgcWpfNavigationBar.NET, WPF
TsgcAvaloniaNavigationBar.NET, Avalonia
CibleComposantPlateformes
Delphi 7 à 13, VCLTsgcVCLNavigationBarWin32 et Win64
Delphi XE6 à 13, FireMonkeyTsgcFMXNavigationBarWindows, macOS, iOS, Android et Linux (FMXLinux)
C++ Builder 2007 à 13TsgcVCLNavigationBar, TsgcFMXNavigationBarEn-têtes .hpp générés et bibliothèques statiques
Delphi 10.2 à 13, indépendant du frameworkModèle et moteur de rendu PNG et SVG sans interfaceLinux64, par exemple pour dessiner une barre sur un serveur
.NET Framework 4.7.2, .NET 8, 9 et 10TsgcWinFormsNavigationBar, barres WPF et AvaloniaWinForms, WPF et Avalonia

Foire aux questions

Les deux. La propriété Mode bascule entre nbmSidebar et nbmAccordion sur le même contrôle, avec les mêmes éléments et les mêmes événements, donc tu peux changer d'avis tard dans le projet ou proposer les deux styles comme préférence utilisateur. Chaque mode se replie aussi en rail d'icônes.

Oui. Gère OnSelectionChange et affiche la page qui correspond à SelectedIndex, par exemple l'onglet d'un TPageControl aux onglets masqués, ou crée un cadre à la demande. La démo SidebarApp est construite exactement ainsi et héberge une page KPI sgcDashboard.

Oui. TsgcFMXNavigationBar cible Windows, macOS, iOS, Android et Linux (FMXLinux) à partir de Delphi XE6, avec les mêmes éléments, modes et événements que la barre VCL. Les listes d'images FireMonkey demandent Delphi XE8 ou plus récent ; les versions plus anciennes utilisent le Glyph de chaque élément.

Seulement les liens d'action des éléments, qui en .NET sont les propriétés Command et CommandParameter. Utilise à la place le OnClick de l'élément ou le OnItemClick de la barre. Toutes les autres fonctionnalités, dont le rail d'icônes, les badges, les thèmes et le rendu sans interface, sont dans Community. Voir Éditions.

Non. Le portage .NET n'a ni verbes de concepteur ni éditeur de collection, donc les éléments ne sont pas sérialisés et tu les ajoutes dans le code, généralement dans le constructeur de la fiche ou de la fenêtre. En Delphi et C++ Builder, la collection Items s'édite à la conception avec l'éditeur de collection standard.

Oui. Toutes les tailles sont des pixels logiques multipliés par l'échelle du moniteur, donc les lignes, les icônes et les badges sont nets à toute densité. En WinForms, les largeurs et hauteurs s'adaptent avec DPI / 96 comme en VCL, et en WPF et Avalonia ce sont des unités indépendantes de l'appareil.

Oui. sgcNavigationSaveToPNG et sgcNavigationSaveToSVG dessinent une barre à partir de son modèle sans fenêtre et sans VCL ni FireMonkey, y compris sous Linux64 à partir de Delphi 10.2. Utilise-les pour la documentation, les tests de régression visuelle ou une page web qui montre le menu de ton application.

Aide de sgcNavigation

3,000+Développeurs
20+Ans
761+Composants
30+Intégrations d'API
5Plateformes
Garantie satisfait ou remboursé de 30 joursPas satisfait ? Demandez un remboursement intégral dans les 30 jours suivant l'achat. Voir la politique de remboursement

Essaie sgcNavigation dès aujourd'hui

L'essai sgcUI inclut sgcNavigation et tous les autres produits sgcUI.