Delphi, C++ Builder & .NET Parte di sgcUI

sgcNavigation, la barra di navigazione sidebar e accordion per Delphi, C++ Builder & .NET

Dai alla tua applicazione un moderno menu di navigazione in pochi minuti. Un unico controllo è una sidebar o un accordion, si riduce a una barra di icone con un'animazione fluida, mostra badge per i contatori non letti e funziona interamente da tastiera. I temi chiaro e scuro sono già inclusi.

VCL, FireMonkey, WinForms, WPF, AvaloniaDelphi da 7 a 13 e C++ Builder da 2007 a 13Edizione .NET Community gratuitaIncluso in sgcUI Standard
Demo SidebarApp con una sidebar di 8 voci nei gruppi Workspace e Business, Dashboard selezionata e due schede KPI sulla destra

Tutto ciò che serve al menu di un'app

Dieci funzionalità che trasformano un elenco di pagine in una struttura di navigazione in cui i tuoi utenti si orientano subito.

Layout e modalità

Un solo controllo copre i due stili di navigazione usati dalle applicazioni gestionali e la stretta barra di icone che sta tra i due.

Una moderna sidebar per app in un solo componente

Layout e modalità

Una moderna sidebar per app in un solo componente

La maggior parte delle applicazioni gestionali ha bisogno della stessa cosa sul bordo sinistro del form principale: un elenco di pagine, raggruppate per area, con la pagina corrente ben evidenziata. Inserisci una TsgcVCLNavigationBar nel form, allineala a sinistra e aggiungi le voci. Le intestazioni di gruppo danno il titolo alle righe sottostanti con un colore attenuato e non vengono mai selezionate. La riga selezionata ha uno sfondo con tinta di accento e una barra di accento da 3 pixel, così gli utenti vedono sempre dove si trovano. Gli stati hover e premuto, i suggerimenti e le righe disabilitate sono tutti disegnati per te, quindi la barra sembra rifinita fin dalla prima esecuzione.

  • Mode := nbmSidebar è lo stile predefinito
  • IsGroup trasforma una voce in un'intestazione di gruppo
  • ItemHeight e GroupHeight impostano l'altezza delle righe
  • La rotellina del mouse scorre gli elenchi lunghi e ScrollIntoView mostra qualsiasi voce
  • Da destra a sinistra per arabo ed ebraico: icone e didascalie si scambiano di posto, e il rientro, i chevron, i badge e il pulsante di compressione sono speculari
Leggi l'argomento della guida
Passa a un accordion con una sola proprietà

Layout e modalità

Passa a un accordion con una sola proprietà

Le schermate delle impostazioni e le console di amministrazione hanno spesso più sezioni di quante ne entrino a schermo. Imposta Mode su nbmAccordion e ogni intestazione di gruppo diventa una sezione che apre e chiude le voci sottostanti, con un chevron a destra e i figli rientrati. Per impostazione predefinita è aperto un solo gruppo alla volta, il che mantiene breve un menu lungo. Imposta AllowMultiExpand quando gli utenti hanno bisogno di più sezioni aperte insieme. Le voci, gli eventi e il tuo codice restano esattamente gli stessi. Le voci inserite prima della prima intestazione non appartengono ad alcun gruppo e sono sempre visibili, il che è ideale per una voce Home o Dashboard sopra le sezioni.

  • Mode := nbmAccordion cambia l'intera barra
  • Expanded apre o chiude un gruppo da codice
  • AllowMultiExpand permette di tenere aperti più gruppi
  • Indent imposta il rientro delle voci figlie
Leggi l'argomento della guida

Layout e modalità

Riduci a una barra di icone, con animazione

Le sidebar larghe sottraggono spazio ai dati che i tuoi utenti sono venuti a vedere. Imposta Collapsed e la barra passa dalla larghezza espansa a una stretta barra di icone in circa 150 ms. Nella barra vengono disegnate solo le icone, la didascalia diventa il suggerimento, le intestazioni di gruppo diventano linee di separazione e i badge diventano punti, quindi non si perde nulla di importante. La barra imposta da sola la propria larghezza, perciò il contenuto accanto la segue semplicemente con alClient. Collega la proprietà Collapsed a un pulsante hamburger, a un'impostazione dell'utente o alla larghezza del form, e la barra si apre e si chiude allo stesso modo sia in modalità sidebar sia in modalità accordion.

  • Collapsed passa da una larghezza all'altra
  • ExpandedWidth (220) e CollapsedWidth (56) in pixel logici
  • AnimateCollapse attiva o disattiva l'animazione
  • OnCollapsedChange ti avvisa quando la barra si apre o si chiude
Leggi l'argomento della guida

Layout e modalità

Comanda le tue pagine dalla selezione

Una barra di navigazione è utile solo se cambia ciò che l'utente vede. Fai clic o tocca una voce abilitata e la barra la seleziona, genera OnItemClick e poi esegue l'OnClick della voce. OnSelectionChange è l'unico punto in cui mostrare la pagina corrispondente, per esempio la scheda di un TPageControl con le schede nascoste, ed è esattamente così che è costruita la demo SidebarApp. SelectedIndex legge e imposta da codice la pagina corrente. Disabilita una voce che l'utente non può ancora raggiungere, spiega il motivo nel suo suggerimento, oppure nascondila ai ruoli che non devono vederla, e la logica di selezione continua a funzionare.

  • SelectedIndex è la pagina scelta dall'utente
  • OnSelectionChange cambia la pagina o il frame
  • OnItemClick sulla barra e OnClick per ogni voce
  • Enabled, Hint e Visible per ogni voce
Leggi l'argomento della guida

Voci che informano

Le righe portano più di una didascalia: un'icona, un contatore e un collegamento alla logica che hai già scritto.

Badge per i contatori non letti

Voci che informano

Badge per i contatori non letti

Gli utenti devono vedere che qualcosa richiede attenzione prima di aprire la pagina. Assegna a una voce un Badge, come un contatore non letti o la parola Nuovo, e la barra lo disegna come una pillola nel colore di accento a destra della riga, con testo nero o bianco, a seconda di quale si legge meglio. Impostalo da codice ogni volta che il valore cambia e la barra si ridisegna da sola. Nella barra di icone compressa il badge diventa un punto sull'icona. Poiché il badge è testo semplice, la stessa proprietà copre contatori, etichette brevi e parole di stato senza alcun codice di disegno personalizzato.

  • Badge è un breve testo per ogni voce
  • Un Badge vuoto non disegna nulla
  • La pillola usa l'accento del tema o il tuo AccentColor
  • Combinalo con Hint per spiegare il contatore
Leggi l'argomento della guida
Icone dalla tua image list o un glifo

Voci che informano

Icone dalla tua image list o un glifo

Ogni riga ha uno slot per l'icona. Indica alla barra l'image list che già usi e imposta ImageIndex per ogni voce: le immagini con maschera o a 32 bit vengono convertite una sola volta e tenute in cache finché l'elenco non cambia. Non hai ancora un'image list? Imposta invece un Glyph, una lettera o un breve simbolo che segue i colori del tema, ed è così che appaiono le demo. Una voce disabilitata disegna la sua immagine al 40 percento di opacità, così lo stato è chiaro a colpo d'occhio. Puoi mescolare entrambi: le voci con un indice di immagine mostrano l'immagine e le altre ripiegano sul loro glifo, così puoi aggiungere le icone gradualmente.

  • Images e ImageIndex per le image list
  • Glyph per una lettera o un simbolo senza immagini
  • VCL disegna le immagini nella loro dimensione
  • Image list FireMonkey da Delphi XE8
Leggi l'argomento della guida

Voci che informano Solo Registered

Collega le voci ai tuoi TAction

Le applicazioni costruite su una TActionList hanno già comandi, didascalie e regole di abilitazione in un unico posto. Collega una voce a qualsiasi TAction VCL o FireMonkey tramite la sua proprietà Action e Caption, Enabled, Visible, Hint e ImageIndex seguono l'azione. Un clic esegue l'azione con la barra come ActionComponent, e OnUpdate viene eseguito a riposo, quindi una voce diventa grigia non appena la sua azione viene disabilitata. In .NET lo stesso compito è svolto da Command e CommandParameter. Una sola TActionList può gestire il menu, la barra degli strumenti e le scorciatoie da tastiera del form.

  • Action collega una voce a qualsiasi TBasicAction
  • L'OnClick di una voce viene eseguito al posto dell'azione
  • Compilato con SGC_NAVIGATION_ACTIONS
  • .NET: Command e CommandParameter con ICommand

Community: assegna l'OnClick della voce o l'OnItemClick della barra al posto di un'azione.

Leggi l'argomento della guida

Tastiera, temi e output

I dettagli che fanno sembrare la barra nativa e la mantengono coerente con il resto della tua applicazione.

Navigazione prima di tutto da tastiera

Tastiera, temi e output

Gli utenti esperti cambiano pagina senza il mouse, e le verifiche di accessibilità se lo aspettano. La barra riceve il focus con Tab e sposta la riga attiva tra le voci visibili e abilitate: Su e Giù scorrono, Home e Fine saltano, Invio o Spazio attivano. Nell'accordion Sinistra comprime un gruppo e Destra lo espande. Il rettangolo di focus tratteggiato appare solo mentre si usa la tastiera, e il focus resta separato dalla pagina selezionata. Gli stessi tasti funzionano nella barra FireMonkey tramite CanFocus, così gli utenti desktop ottengono lo stesso comportamento su ogni piattaforma.

  • TabStop è attivo per impostazione predefinita nella barra VCL
  • FocusedIndex del modello è la riga della tastiera
  • SelectedIndex resta la pagina scelta
  • I suggerimenti mostrano la didascalia nella barra di icone compressa
Leggi l'argomento della guida
Chiaro, scuro e il tuo colore di accento

Tastiera, temi e output

Chiaro, scuro e il tuo colore di accento

Un menu che ignora il tema dell'applicazione sembra aggiunto a posteriori. Theme imposta i colori di superficie, bordo, testo, intestazione di gruppo, hover e accento a partire dai token condivisi di sgcUICore, così una barra e un sgcDashboard con lo stesso Theme coincidono esattamente. AccentColor sostituisce l'accento con il colore del tuo marchio per la barra di selezione, il rettangolo di focus e i badge. Una barra ospitata in una tessera di dashboard segue da sola il tema della dashboard. Cambia il tema a runtime e la barra si ridisegna subito, pronta per un interruttore della modalità scura nella tua pagina delle impostazioni.

  • Theme: utDefault (predefinito, segue il tema dell'applicazione), utLight o utDark
  • AccentColor come valore $AARRGGBB, 0 mantiene l'accento del tema
  • Gli stessi token di ogni prodotto sgcUI
  • Le tessere della dashboard trasmettono il loro tema alla barra
Leggi l'argomento della guida
Genera la barra senza una finestra

Tastiera, temi e output

Genera la barra senza una finestra

Documentazione, test visivi e back end web hanno a volte bisogno di un'immagine del menu, non del menu stesso. Il renderer in sgcNavigation_Render disegna un TsgcNavigationModel senza finestra e senza VCL o FireMonkey, così un programma console, un servizio o un server producono la stessa barra come PNG o SVG. L'unit si compila su ogni piattaforma, Linux64 compreso, e un parametro scale dà immagini nitide per gli schermi ad alto DPI. Passa la tua image list al renderer e l'immagine esportata mostra le stesse icone dell'applicazione in esecuzione.

  • sgcNavigationSaveToPNG scrive un file o uno stream PNG
  • sgcNavigationSaveToSVG scrive la stessa barra come SVG
  • sgcNavigationRender disegna su qualsiasi canvas sgcUICore
  • Larghezza e altezza in pixel logici, per la scala
Leggi l'argomento della guida

Guarda sgcNavigation all'opera

sgcNavigation nelle demo della suite sgcUI: applicazioni complete che funzionano offline con dati simulati integrati.

Chi sviluppa con sgcNavigation

Una struttura moderna per ERP e app di amministrazione

Hai decine di form esistenti e una finestra principale che li apre ancora da una barra dei menu. Metti una sidebar a sinistra, una voce per area, e lascia che OnSelectionChange cambi le schede di un TPageControl con le schede nascoste. I badge mostrano gli ordini in sospeso o i messaggi non letti, e la barra di icone restituisce spazio ai form. Esegui SidebarApp per vedere il modello al lavoro con una pagina sgcDashboard.

  • Modalità sidebar
  • Badge
  • Barra di icone compressa
Esegui la demo SidebarApp

Impostazioni e console di amministrazione

Le schermate di configurazione raggruppano decine di pagine sotto pochi titoli come Sales, Inventory e Admin. L'accordion tiene aperta una sola sezione alla volta, o più sezioni con AllowMultiExpand, e i collegamenti Action riutilizzano i comandi e le regole di abilitazione della tua TActionList. Gli utenti da tastiera si muovono tra le sezioni con i tasti freccia. La demo Accordion mostra tre gruppi, un interruttore di espansione e un registro dei clic.

  • Modalità accordion
  • Collegamenti Action
  • Navigazione da tastiera
Esegui la demo Accordion

La stessa navigazione su ogni piattaforma

Un'applicazione FireMonkey che gira su Windows, macOS, iOS e Android non dovrebbe aver bisogno di un menu diverso per ciascuna. TsgcFMXNavigationBar ha le stesse voci, modalità ed eventi della barra VCL, e le barre .NET per WinForms, WPF e Avalonia seguono gli stessi nomi. I team che distribuiscono un'app desktop Delphi e uno strumento .NET mantengono un unico modello mentale. SidebarFMX è la versione FireMonkey della demo della sidebar.

  • Barra FireMonkey
  • Temi
  • Barre .NET
Esegui la demo SidebarFMX

Una barra di navigazione in poche righe

La stessa API in Delphi, C++ Builder e C#: una barra accordion con gruppi, un badge, una voce disabilitata e un pulsante 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

Esegui le demo di sgcNavigation

Le demo SidebarApp e Accordion sono fornite per VCL e C++ Builder, più una versione FireMonkey per Delphi, e nell'edizione .NET come progetti WinForms, WPF e Avalonia.

SidebarApp

SidebarApp

Una sidebar che comanda un page control con le schede nascoste, con icone, un badge, una voce disabilitata, un pulsante Collapse, una combo dei temi e una pagina KPI sgcDashboard. Dimostra il modello della struttura applicativa end to end.

Accordion

Solo Registered Accordion

Tre gruppi, Sales, Inventory e Admin, un interruttore AllowMultiExpand, collegamenti Action e un registro dei clic. Usa i collegamenti Action, quindi richiede l'edizione Registered o Trial.

SidebarFMX

La demo della sidebar costruita con TsgcFMXNavigationBar per FireMonkey, solo per Delphi. Le stesse voci, modalità ed eventi della versione VCL, pronta per Windows, macOS e i target mobili.

Demo compilate

Eseguibili pronti all'uso di ogni prodotto sgcUI, senza nulla da installare.

Scarica sgcUI_bin.zip →

Dove è incluso sgcNavigation

sgcNavigation è presente in ogni edizione di sgcUI, a partire da Standard, ed è venduto anche separatamente. sgcNavigation è incluso anche nel bundle All-Access.

sgcNavigation come pacchetto singolo

€149 / sviluppatore, codice sorgente completo, 1 anno di aggiornamenti.

Acquista sgcNavigation → Vedi i prezzi →

sgcUI Standard

sgcNavigation, sgcGrid, sgcToolbar e sgcEditors, da €380.

Vedi Standard →

sgcUI Professional

Standard più sgcCharts, sgcDashboard e sgcGauges, da €529.

Vedi Professional →

sgcUI Enterprise

Tutti i 14 prodotti sgcUI, da €699.

Vedi Enterprise →

L'edizione Community gratuita (esegece.sgcNavigation.Community su NuGet) ha tutto tranne i collegamenti Action delle voci.

FunzionalitàCommunity (gratuita)Registered
Modalità sidebar e accordion✓✓
Compressione animata a barra di icone✓✓
Icone, glifi e badge✓✓
Navigazione da tastiera✓✓
Temi chiaro e scuro, colore di accento✓✓
Output PNG e SVG headless✓✓
Collegamenti Action (Delphi) e Command (.NET)−✓

Framework e piattaforme supportati

Componenti di sgcNavigation

ComponenteTarget
TsgcVCLNavigationBarDelphi e C++ Builder, VCL (sgcNavigation_VCL)
TsgcFMXNavigationBarDelphi e C++ Builder, FireMonkey (sgcNavigation_FMX)
TsgcNavigationItem, TsgcNavigationItems, TsgcNavigationModelModello indipendente dal framework (sgcNavigation_Model)
TsgcWinFormsNavigationBar.NET, WinForms
TsgcWpfNavigationBar.NET, WPF
TsgcAvaloniaNavigationBar.NET, Avalonia
TargetComponentePiattaforme
Delphi da 7 a 13, VCLTsgcVCLNavigationBarWin32 e Win64
Delphi da XE6 a 13, FireMonkeyTsgcFMXNavigationBarWindows, macOS, iOS, Android e Linux (FMXLinux)
C++ Builder da 2007 a 13TsgcVCLNavigationBar, TsgcFMXNavigationBarHeader .hpp generati e librerie statiche
Delphi da 10.2 a 13, indipendente dal frameworkModello e renderer PNG e SVG headlessLinux64, per esempio per generare una barra su un server
.NET Framework 4.7.2, .NET 8, 9 e 10TsgcWinFormsNavigationBar, barre WPF e AvaloniaWinForms, WPF e Avalonia

Domande frequenti

Entrambi. La proprietà Mode passa da nbmSidebar a nbmAccordion sullo stesso controllo, con le stesse voci e gli stessi eventi, così puoi cambiare idea a progetto avanzato oppure offrire entrambi gli stili come preferenza dell'utente. Ogni modalità si riduce anche alla barra di icone compressa.

Sì. Gestisci OnSelectionChange e mostra la pagina corrispondente a SelectedIndex, per esempio la scheda di un TPageControl con le schede nascoste, oppure crea un frame su richiesta. La demo SidebarApp è costruita esattamente così e ospita una pagina KPI sgcDashboard.

Sì. TsgcFMXNavigationBar è destinato a Windows, macOS, iOS, Android e Linux (FMXLinux) da Delphi XE6, con le stesse voci, modalità ed eventi della barra VCL. Le image list FireMonkey richiedono Delphi XE8 o successivo; le versioni precedenti usano il Glyph di ogni voce.

Solo i collegamenti Action delle voci, che in .NET sono le proprietà Command e CommandParameter. Usa invece l'OnClick della voce o l'OnItemClick della barra. Ogni altra funzionalità, comprese la barra di icone, i badge, i temi e l'output headless, è in Community. Vedi Edizioni.

No. Il port .NET non ha verbi di progettazione né un editor di collezioni, quindi le voci non vengono serializzate e vanno aggiunte da codice, di solito nel costruttore del form o della finestra. In Delphi e C++ Builder la collezione Items si modifica in fase di progettazione con il normale editor di collezioni.

Sì. Tutte le dimensioni sono pixel logici moltiplicati per la scala del monitor, quindi righe, icone e badge sono nitidi a qualsiasi DPI. In WinForms larghezze e altezze scalano con DPI / 96 come in VCL, mentre in WPF e Avalonia sono unità indipendenti dal dispositivo.

Sì. sgcNavigationSaveToPNG e sgcNavigationSaveToSVG generano una barra dal suo modello senza finestra e senza VCL o FireMonkey, anche su Linux64 da Delphi 10.2. Usali per la documentazione, per i test di regressione visiva o per una pagina web che mostra il menu della tua applicazione.

Guida di sgcNavigation

3,000+Sviluppatori
20+Anni
761+Componenti
30+Integrazioni API
5Piattaforme
Garanzia soddisfatti o rimborsati di 30 giorniNon sei soddisfatto? Richiedi un rimborso completo entro 30 giorni dall'acquisto. Vedi la politica di rimborso

Prova sgcNavigation oggi

Il trial di sgcUI include sgcNavigation e ogni altro prodotto sgcUI.