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

sgcWizard, il wizard e lo stepper per Delphi, C++ Builder & .NET

Guida i tuoi utenti attraverso configurazione, onboarding e checkout un passo chiaro alla volta. Ogni pagina che aggiungi diventa un passo dello stepper, Indietro, Avanti, Fine e Annulla sono già inclusi e un solo evento ti permette di bloccare lo spostamento finché la pagina non è valida.

VCL, FireMonkey, WinForms, WPF, AvaloniaDelphi da 7 a 13 e C++ Builder da 2007 a 13Ogni funzionalità nell'edizione .NET Community gratuitaIncluso in sgcUI Enterprise
Wizard di onboarding al passo 2 di 4, Account, con lo stepper in alto e i pulsanti Indietro, Avanti e Annulla

Tutto ciò che serve a un wizard

Dodici funzionalità che trasformano un form lungo in un percorso guidato che i tuoi utenti portano a termine, con le regole e l'aspetto della tua applicazione.

Pagine, passi e regole

La struttura di un wizard è pronta: tu aggiungi le pagine e decidi le regole.

Form a più passi con uno stepper incorporato

Pagine, passi e regole

Form a più passi con uno stepper incorporato

I form lunghi sopraffanno gli utenti, mentre gli stessi campi divisi in pochi passi chiari vengono completati. TsgcVCLWizard trasforma ogni pagina in un passo: AddPage crea una pagina e la sua voce nella fascia dello stepper nello stesso momento, con una didascalia, una riga di descrizione e un glifo facoltativo. La fascia mostra a che punto è l'utente e cosa resta, e la barra con Indietro, Avanti, Fine e Annulla è già presente. Ogni pagina è un contenitore, quindi ne progetti il contenuto con i normali controlli, e il wizard sposta il focus sul primo controllo ogni volta che una pagina si apre.

  • AddPage crea una TsgcVCLWizardPage e il suo passo
  • Caption, Description e StepGlyph etichettano ogni passo
  • ActivePageIndex e ActivePage cambiano pagina direttamente da codice
  • Next, Back e GoToPage si spostano esattamente come i pulsanti
Leggi l'argomento della guida

Pagine, passi e regole

Blocca l'utente finché la pagina non è valida

Lasciare che un utente arrivi al riepilogo con un indirizzo e-mail vuoto significa un errore più avanti, lontano dal campo che lo ha causato. OnBeforePageChange viene generato prima di ogni spostamento, che l'utente abbia premuto Avanti, Indietro o Fine, fatto clic su un passo, o il tuo codice abbia chiamato GoToPage. Ti dice la pagina che si lascia e quella che sta per aprirsi, e un flag var aAllow blocca lo spostamento. Poiché ogni spostamento in avanti ha un indice di destinazione più alto, un solo test valida la pagina qualunque cosa l'utente abbia premuto. Quando poni il veto non cambia nulla, quindi mostri il motivo e porti il focus sul campo.

  • OnBeforePageChange(Sender, aFromIndex, aToIndex, aAllow) può bloccare qualsiasi spostamento
  • aToIndex = PageCount significa che l'utente ha premuto Fine
  • Testare aToIndex < aFromIndex lascia passare gli spostamenti all'indietro
  • OnPageChanged viene generato dopo lo spostamento, per esempio per riempire una pagina di riepilogo
Leggi l'argomento della guida
Salta i passi che non si applicano

Pagine, passi e regole

Salta i passi che non si applicano

I flussi reali si ramificano. Un cliente che sceglie la spedizione standard non ha bisogno della pagina del corriere, e un account privato non ha il passo aziendale. Imposta Skip su una pagina e resta nel wizard, ma Avanti e Indietro la saltano e lo stepper disegna il suo passo come saltato con un contorno tratteggiato, così gli utenti vedono comunque l'intero percorso. Skip può cambiare in qualsiasi momento, in genere da una casella di controllo o da una scelta in una pagina precedente. Il pulsante Indietro viene disabilitato automaticamente quando nessuna pagina precedente è raggiungibile, così gli utenti non finiscono mai in una pagina che non li riguarda.

  • Skip su una TsgcVCLWizardPage la toglie dal percorso
  • I passi saltati vengono disegnati nello stato wssSkipped
  • GoToPage si sposta solo su pagine non saltate
  • La demo Onboarding salta la sua pagina Options da una casella di controllo
Leggi l'argomento della guida
Fine e Annulla fanno ciò che decidi tu

Pagine, passi e regole

Fine e Annulla fanno ciò che decidi tu

Un wizard di solito termina salvando qualcosa, e vuoi quel codice in un unico posto. Nell'ultima pagina il pulsante Avanti mostra la didascalia Fine e diventa il pulsante predefinito. Premerlo, premere Invio o chiamare Finish esegue prima la tua validazione e poi genera OnFinish, dove salvi i dati, chiudi il form o imposti il ModalResult di una finestra di dialogo. Il pulsante Annulla, il tasto Esc e una chiamata a Cancel generano OnCancel, così puoi chiedere conferma prima di scartare il lavoro. Il wizard non chiude mai nulla da solo, quindi il flusso resta sotto il tuo controllo.

  • OnFinish viene eseguito dopo che OnBeforePageChange consente la fine
  • OnCancel gestisce il pulsante Annulla, il tasto Esc e Cancel
  • ShowCancel nasconde il pulsante Annulla per i flussi che devono essere completati
  • FinishCaption imposta il testo dell'ultimo pulsante Avanti
Leggi l'argomento della guida

Uno stepper che si spiega da solo

La fascia di avanzamento dice agli utenti dove sono, cosa è fatto e cosa è andato storto.

Stepper in alto, a sinistra o nascosto

Uno stepper che si spiega da solo

Stepper in alto, a sinistra o nascosto

I flussi brevi si leggono meglio con i passi in alto, mentre quelli più lunghi con descrizioni stanno meglio in una colonna a sinistra, come in un installer. StepperPosition sposta la fascia senza toccare le tue pagine: wspTop mostra una fascia orizzontale alta 80 pixel logici, wspLeft una fascia verticale larga 200 pixel e wspNone la nasconde per una semplice finestra di dialogo a pagine. La barra dei pulsanti resta in basso. La demo Onboarding ha una combo che cambia la posizione a runtime, così puoi confrontare i tre layout con il tuo contenuto in pochi secondi.

  • StepperPosition accetta wspTop, wspLeft o wspNone
  • L'Orientation di uno stepper è woHorizontal o woVertical
  • CircleSize e ConnectorThickness dimensionano i marcatori e le linee dei passi
  • ShowDescriptions mostra o nasconde la seconda riga di ogni etichetta
  • Da destra a sinistra per arabo ed ebraico: il lato dello stepper, l'ordine dei passi, i connettori e i pulsanti Indietro e Avanti con le loro frecce sono speculari
Leggi l'argomento della guida
Stati dei passi chiari grazie al colore

Uno stepper che si spiega da solo

Stati dei passi chiari grazie al colore

Gli utenti scorrono uno stepper in un secondo, quindi ogni stato deve essere evidente. I passi in sospeso sono contorni con un numero attenuato, il passo attivo è un disco di accento con un alone morbido e una didascalia in grassetto, i passi completati portano un segno di spunta, gli errori sono un disco rosso con un punto esclamativo e i passi saltati hanno un contorno tratteggiato. Con AutoStates attivo, impostare ActiveIndex completa i passi precedenti e lascia in sospeso quelli successivi, mentre gli stati di errore e di salto sopravvivono. Disattiva AutoStates quando è la tua applicazione a decidere ogni stato.

  • wssPending, wssActive, wssCompleted, wssError e wssSkipped
  • AutoStates ricava gli stati da ActiveIndex
  • Un passo disabilitato viene disegnato con colori sbiaditi
  • AccentColor ricolora i passi attivi e completati
Leggi l'argomento della guida
Uno stepper autonomo per i flussi di checkout

Uno stepper che si spiega da solo

Uno stepper autonomo per i flussi di checkout

Non ogni processo è un wizard. Un checkout, una pagina di stato dell'ordine o il ciclo di vita di un ticket hanno bisogno dell'indicatore di avanzamento senza le pagine. TsgcVCLStepper è la stessa fascia come controllo a sé, orizzontale o verticale, con didascalie, descrizioni e i cinque stati. Imposta Clickable e gli utenti tornano a un passo completato con un clic o con i tasti freccia, mentre OnStepClick ti permette di bloccare lo spostamento. La demo Stepper mostra uno stepper orizzontale e uno verticale affiancati, con pulsanti che segnano il passo attivo come errore o come saltato.

  • TsgcVCLStepper e TsgcFMXStepper funzionano senza un wizard
  • Steps è una collezione modificata con il normale editor di collezioni
  • Clickable e OnStepClick trasformano i passi completati in navigazione
  • ActiveIndex sposta l'avanzamento dal tuo codice
Leggi l'argomento della guida

Si adatta alla tua applicazione

La tua lingua, il tuo designer, il tuo tema e il tuo framework.

Le tue parole su ogni pulsante

Si adatta alla tua applicazione

Le tue parole su ogni pulsante

Un pulsante Next in inglese in un'applicazione italiana sembra incompleto. Le quattro didascalie della barra dei pulsanti sono proprietà pubblicate con i valori predefiniti Back, Next, Finish e Cancel. Impostale nell'Object Inspector, traducile con i normali strumenti di risorse dell'IDE oppure assegnale da codice dalla tua tabella di traduzione. Una didascalia viene salvata nel file del form solo quando differisce dal valore predefinito, e i pulsanti si allargano per contenere parole più lunghe. Le etichette dei passi provengono da Caption e Description delle pagine, quindi si traducono insieme alle pagine.

  • BackCaption, NextCaption, FinishCaption e CancelCaption
  • ShowCancel rimuove il pulsante Annulla
  • Le etichette dei passi seguono Caption e Description di ogni pagina
  • L'argomento della guida imposta Anterior, Siguiente, Finalizar e Cancelar come esempio
Leggi l'argomento della guida

Si adatta alla tua applicazione

Progetta ogni pagina visivamente nell'IDE

I wizard sono form, e i form si progettano meglio nel designer dei form. La pagina SGC Wizard della tavolozza registra il wizard e lo stepper per VCL e FireMonkey. Fai clic destro sul wizard e scegli Add Page: viene creata, mostrata e selezionata una nuova pagina, pronta per le tue modifiche, etichette e caselle di controllo. Next Page e Previous Page si spostano tra le pagine nel designer, e un clic su un passo della fascia ne mostra la pagina. È visibile solo la pagina attiva, e la pagina mostrata in fase di progettazione è quella salvata nel file del form.

  • I verbi Add Page, Next Page e Previous Page nel menu contestuale
  • TsgcVCLWizard, TsgcVCLStepper, TsgcFMXWizard e TsgcFMXStepper nella tavolozza
  • La fascia e la barra dei pulsanti sono interne e non ingombrano mai il file del form
  • Gli Steps di uno stepper autonomo usano il normale editor di collezioni
Leggi l'argomento della guida
Temi e tastiera, Invio è Avanti

Si adatta alla tua applicazione

Temi e tastiera, Invio è Avanti

Un wizard deve sembrare parte del resto dell'applicazione, con il mouse o senza. Theme passa tra i temi chiaro e scuro di sgcUICore, e AccentColor imposta il colore dei passi attivi, dei connettori completati e del pulsante predefinito. Il wizard applica il tema anche ai controlli delle sue pagine, così una TLabel, una TEdit o una TCheckBox restano leggibili su una pagina scura. Quando il focus è dentro il wizard, Invio è Avanti, o Fine nell'ultima pagina, ed Esc è Annulla, ma un memo mantiene comunque il suo Invio per andare a capo.

  • Theme accetta utDefault (segue il tema dell'applicazione), utLight, utDark o utCustom
  • AccentColor è un colore ARGB, e 0 mantiene l'accento del tema
  • I controlli figli con una propria proprietà Theme ricevono il tema del wizard
  • Uno stepper con focus si muove con i tasti freccia mentre Clickable è attivo
Leggi l'argomento della guida
Immagini dello stepper per documentazione e test

Si adatta alla tua applicazione

Immagini dello stepper per documentazione e test

Documentazione, e-mail e test di regressione visiva hanno spesso bisogno di un'immagine dei passi anziché di un controllo live. Il renderer in sgcWizard_Render disegna un TsgcStepperModel e la barra dei pulsanti senza finestra e senza VCL o FireMonkey, così un programma console, un servizio, un test unitario o un web server possono produrre lo stesso stepper come immagine. Si compila su ogni piattaforma, Linux64 compreso. Larghezza e altezza sono pixel logici e un fattore di scala dà immagini nitide: 640 per 100 a scala 2 è un PNG da 1280 per 200.

  • sgcWizardSaveToPNG e sgcWizardSaveToSVG scrivono un file o uno stream
  • sgcWizardRender disegna su qualsiasi canvas sgcUICore
  • sgcWizardSaveButtonBarToPNG e sgcWizardSaveButtonBarToSVG disegnano la barra dei pulsanti
  • In .NET il pacchetto esegece.sgcWizard.Rendering scrive PNG su Windows, Linux e macOS
Leggi l'argomento della guida

Si adatta alla tua applicazione

Collegalo al tuo view model in WPF e Avalonia

Gli sviluppatori WPF e Avalonia si aspettano di fare binding, non di scrivere code behind. In questi host le proprietà rivolte all'utente del wizard, delle sue pagine e dello stepper sono dependency property o proprietà Avalonia, quindi si collegano a un view model, prendono valori da uno Style e possono essere animate. ActivePageIndex ha binding TwoWay per impostazione predefinita, perché il wizard lo cambia da solo su Avanti, Indietro e clic sui passi, così il tuo view model conosce sempre il passo corrente. I controlli WinForms mantengono proprietà semplici, e tutti e tre gli host usano i nomi Delphi.

  • TsgcWpfWizard e TsgcAvaloniaWizard, con le loro pagine e i loro stepper
  • Un campo statico come ActivePageIndexProperty per ogni proprietà collegabile
  • Gli eventi mantengono i nomi Delphi, come OnBeforePageChange, come proprietà delegate
  • In WPF e Avalonia una pagina contiene un solo figlio; in WinForms una pagina è un contenitore
Leggi l'argomento della guida

Guarda sgcWizard all'opera

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

Chi sviluppa con sgcWizard

Onboarding e configurazione al primo avvio

I primi minuti decidono se un nuovo utente resta. Dividi la creazione dell'account, le preferenze e un riepilogo in quattro pagine brevi, valida nome ed e-mail in OnBeforePageChange prima che l'utente prosegua e salta la pagina delle opzioni per gli utenti che vogliono i valori predefiniti. OnPageChanged riempie il riepilogo e OnFinish salva l'account. La demo Onboarding è esattamente questo flusso, con un interruttore chiaro e scuro e un selettore della posizione dello stepper da provare.

  • Validazione
  • Pagine saltate
  • Fine e Annulla
Esegui la demo Onboarding

Checkout e inserimento ordini

L'inserimento ordini segue un percorso fisso: carrello, indirizzo, spedizione, pagamento e conferma. Usa il wizard quando ogni passo è una pagina di campi, oppure metti uno stepper autonomo sopra un form che hai già. I passi completati diventano scorciatoie cliccabili per tornare indietro, un pagamento fallito appare come un passo di errore rosso e un passo di spedizione che non si applica resta visibile con un contorno tratteggiato. La demo Stepper mostra ogni stato, orizzontale e verticale.

  • Stepper autonomo
  • Stati dei passi
  • Passi cliccabili
Esegui la demo Stepper

Assistenti di configurazione e di importazione

Gli strumenti tecnici hanno bisogno di assistenti per i compiti che gli utenti svolgono di rado: collegarsi a un database, importare un file, configurare un dispositivo. Un wizard con lo stepper a sinistra elenca ogni passo con una descrizione, OnBeforePageChange controlla l'input prima che l'utente prosegua e le didascalie dei pulsanti seguono la lingua dello strumento. Lo stesso wizard gira in FireMonkey, come mostra la demo OnboardingFMX, e in WinForms, WPF e Avalonia.

  • Stepper a sinistra
  • Validazione
  • Didascalie dei pulsanti
Esegui la demo OnboardingFMX

Un wizard in poche righe

La stessa API in Delphi, C++ Builder e C#: aggiungi le pagine, segnane una come facoltativa e valida prima che l'utente lasci la pagina Account.

procedure TMainForm.CreateWizard;
var
  oPage: TsgcVCLWizardPage;
begin
  // the wizard fills the form: stepper on the left, buttons at the bottom
  FWizard := TsgcVCLWizard.Create(Self);
  FWizard.Parent := Self;
  FWizard.Align := alClient;
  FWizard.StepperPosition := wspLeft;
  FWizard.Theme := utDark;
  FWizard.NextCaption := 'Continue';
  FWizard.FinishCaption := 'Create account';
  // every page is a step of the stepper
  oPage := FWizard.AddPage('Welcome');
  oPage.Description := 'Start here';
  oPage := FWizard.AddPage('Account');
  oPage.Description := 'Your details';
  FName := TEdit.Create(Self);
  FName.Parent := oPage;
  FName.SetBounds(24, 24, 240, 24);
  // an optional page the user can skip: Next and Back jump over it
  FOptions := FWizard.AddPage('Options');
  FOptions.Description := 'Optional';
  FOptions.Skip := True;
  oPage := FWizard.AddPage('Done');
  oPage.Description := 'Summary';
  FWizard.ActivePageIndex := 0;
  FWizard.OnBeforePageChange := WizardBeforePageChange;
  FWizard.OnFinish := WizardFinish;
end;

procedure TMainForm.WizardBeforePageChange(Sender: TObject;
  aFromIndex, aToIndex: Integer; var aAllow: Boolean);
begin
  // veto: leaving Account forwards needs a name
  if (aFromIndex = 1) and (aToIndex > aFromIndex) then
    aAllow := Trim(FName.Text) <> '';
end;

procedure TMainForm.WizardFinish(Sender: TObject);
begin
  ShowMessage('Welcome, ' + FName.Text);
end;
#include <vcl.h>
#include <Vcl.StdCtrls.hpp>
#include "sgcUICore_Theme.hpp"
#include "sgcWizard_Model.hpp"
#include "sgcWizard_VCL.hpp"

class TWizardHandler : public TObject
{
public:
  TEdit *Name;
  void __fastcall BeforePageChange(TObject *Sender, int aFromIndex,
    int aToIndex, bool &aAllow);
  void __fastcall Finish(TObject *Sender);
};

void __fastcall TWizardHandler::BeforePageChange(TObject *Sender,
  int aFromIndex, int aToIndex, bool &aAllow)
{
  // veto: leaving Account forwards needs a name
  if ((aFromIndex == 1) && (aToIndex > aFromIndex))
    aAllow = !Name->Text.Trim().IsEmpty();
}

void __fastcall TWizardHandler::Finish(TObject *Sender)
{
  ShowMessage("Welcome, " + Name->Text);
}

void __fastcall CreateWizard(TForm *Form, TWizardHandler *Handler)
{
  // the wizard fills the form: stepper on the left, buttons at the bottom
  TsgcVCLWizard *Wizard = new TsgcVCLWizard(Form);
  Wizard->Parent = Form;
  Wizard->Align = alClient;
  Wizard->StepperPosition = wspLeft;
  Wizard->Theme = utDark;
  Wizard->NextCaption = "Continue";
  Wizard->FinishCaption = "Create account";
  // every page is a step of the stepper
  TsgcVCLWizardPage *Page = Wizard->AddPage("Welcome");
  Page->Description = "Start here";
  Page = Wizard->AddPage("Account");
  Page->Description = "Your details";
  Handler->Name = new TEdit(Form);
  Handler->Name->Parent = Page;
  Handler->Name->SetBounds(24, 24, 240, 24);
  // an optional page the user can skip: Next and Back jump over it
  Page = Wizard->AddPage("Options");
  Page->Description = "Optional";
  Page->Skip = true;
  Page = Wizard->AddPage("Done");
  Page->Description = "Summary";
  Wizard->ActivePageIndex = 0;
  Wizard->OnBeforePageChange = Handler->BeforePageChange;
  Wizard->OnFinish = Handler->Finish;
}
using System;
using System.Windows.Forms;
using esegece.sgcUICore;
using esegece.sgcWizard;

internal class MainForm : Form
{
    private readonly TsgcWinFormsWizard Wizard = new TsgcWinFormsWizard();
    private readonly TextBox txtName = new TextBox();

    public MainForm()
    {
        // the wizard fills the form: stepper on the left, buttons at the bottom
        Wizard.Dock = DockStyle.Fill;
        Wizard.StepperPosition = TsgcWizardStepperPosition.wspLeft;
        Wizard.Theme = TsgcUITheme.utDark;
        Wizard.NextCaption = "Continue";
        Wizard.FinishCaption = "Create account";
        Controls.Add(Wizard);
        // every page is a step of the stepper
        TsgcWinFormsWizardPage oPage = Wizard.AddPage("Welcome");
        oPage.Description = "Start here";
        oPage = Wizard.AddPage("Account");
        oPage.Description = "Your details";
        txtName.SetBounds(24, 24, 240, 24);
        oPage.Controls.Add(txtName);
        // an optional page the user can skip: Next and Back jump over it
        oPage = Wizard.AddPage("Options");
        oPage.Description = "Optional";
        oPage.Skip = true;
        oPage = Wizard.AddPage("Done");
        oPage.Description = "Summary";
        Wizard.ActivePageIndex = 0;
        Wizard.OnBeforePageChange = WizardBeforePageChange;
        Wizard.OnFinish = sender => MessageBox.Show("Welcome, " + txtName.Text);
    }

    private void WizardBeforePageChange(object sender, int aFromIndex, int aToIndex, ref bool aAllow)
    {
        // veto: leaving Account forwards needs a name
        if (aFromIndex == 1 && aToIndex > aFromIndex)
            aAllow = txtName.Text.Trim() != "";
    }
}
dotnet add package esegece.sgcWizard.WinForms

Esegui le demo di sgcWizard

Onboarding e Stepper sono forniti per Delphi VCL e per C++ Builder, OnboardingFMX per Delphi FireMonkey, e l'edizione .NET ha Onboarding e Stepper per WinForms, WPF e Avalonia.

Onboarding

Onboarding

Quattro pagine, Welcome, Account, Options e Summary. OnBeforePageChange blocca Avanti finché nome ed e-mail non sono validi, una casella di controllo salta la pagina Options, OnPageChanged riempie il riepilogo e OnFinish lo mostra. Un interruttore del tema e una combo StepperPosition ti permettono di provare ogni layout.

Stepper

Stepper

Due controlli TsgcVCLStepper autonomi, orizzontale e verticale, con gli stessi cinque passi. AutoStates completa i passi precedenti a quello attivo, i pulsanti segnano un passo come errore o saltato e un clic su un passo completato riporta indietro entrambi gli stepper.

OnboardingFMX

Il flusso Onboarding con TsgcFMXWizard e quattro figli TsgcFMXWizardPage: lo stesso veto di validazione, la stessa pagina Options saltata, un riepilogo su Fine e una casella di controllo del tema scuro. Solo Delphi.

Demo compilate

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

Scarica sgcUI_bin.zip →

Dove è incluso sgcWizard

sgcWizard fa parte di sgcUI Enterprise ed è venduto anche separatamente. sgcWizard è incluso anche nel bundle All-Access.

sgcWizard come pacchetto singolo

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

Acquista sgcWizard → Vedi i prezzi →

sgcUI Enterprise

Tutti i 14 prodotti sgcUI, da €699.

Vedi Enterprise →

sgcWizard per .NET

esegece.sgcWizard.WinForms, .Wpf e .Avalonia su NuGet, allo stesso prezzo di Delphi. L'edizione Community gratuita (esegece.sgcWizard.Community) ha ogni funzionalità, cambia solo l'avviso del trial.

Acquista sgcWizard .NET →

Le build Registered, Trial e Community includono tutte ogni funzionalità di sgcWizard. Cambia solo l'avviso del trial.

FunzionalitàCommunity (gratuita)Registered
Wizard con pagine e fascia dello stepper✓✓
Validazione con OnBeforePageChange✓✓
Pagine saltate e i cinque stati dei passi✓✓
Stepper autonomo✓✓
Didascalie dei pulsanti, temi chiaro e scuro, colore di accento✓✓
Output PNG e SVG headless✓✓

Framework e piattaforme supportati

Componenti di sgcWizard

TsgcVCLWizard e TsgcVCLWizardPage

Il wizard VCL e le sue pagine. Un editor di componente aggiunge le pagine in fase di progettazione, dalla pagina SGC Wizard della tavolozza.

TsgcFMXWizard e TsgcFMXWizardPage

Lo stesso wizard per FireMonkey su Windows, macOS, iOS, Android e Linux (FMXLinux).

TsgcVCLStepper e TsgcFMXStepper

Il controllo stepper autonomo, orizzontale o verticale, per qualsiasi flusso a più passi.

TsgcStepperModel

Il modello indipendente dal framework dietro entrambi i controlli: passi, stati e layout, con sgcWizardSaveToPNG e sgcWizardSaveToSVG per l'output headless.

Controlli .NET

TsgcWinFormsWizard, TsgcWpfWizard e TsgcAvaloniaWizard, ciascuno con le proprie classi di pagina e stepper.

Due demo in ogni linguaggio

Onboarding, una registrazione in quattro pagine con validazione, e Stepper, uno stepper autonomo con stati.

TargetComponentePiattaforme
Delphi da 7 a 13, VCLTsgcVCLWizard, TsgcVCLStepperWin32, e Win64 da XE2
Delphi da XE6 a 13, FireMonkeyTsgcFMXWizard, TsgcFMXStepperWindows, macOS, iOS, Android e Linux (FMXLinux)
C++ Builder da 2007 a 13TsgcVCLWizard, TsgcVCLStepperHeader .hpp generati e librerie statiche
Delphi da 10.2 a 13, indipendente dal frameworkTsgcStepperModelLinux64, per esempio per generare uno stepper in PNG o SVG su un server
.NETTsgcWinFormsWizard, TsgcWpfWizard, TsgcAvaloniaWizardWinForms, WPF e Avalonia

Domande frequenti

Sì. OnBeforePageChange viene generato prima di ogni spostamento, da pulsanti, tastiera, clic su un passo o dal tuo codice. Riceve la pagina che si lascia e quella che sta per aprirsi, e impostare aAllow su False mantiene l'utente dov'è. Anche Finish lo genera, con PageCount come destinazione, così l'ultima pagina viene validata nello stesso modo.

Sì. Inserisci un TsgcVCLWizard o un TsgcFMXWizard in un form, fai clic destro e scegli Add Page. Ogni pagina si progetta come qualsiasi altro contenitore, con i tuoi controlli. I verbi Next Page e Previous Page, o un clic su un passo della fascia, mostrano le altre pagine nel designer.

Sì. sgcWizard è costruito da un unico sorgente, e Registered, Trial e Community hanno tutte ogni funzionalità: i wizard, gli stepper, la validazione, le pagine saltate, gli stati dei passi, i temi e l'output PNG e SVG headless. Community è il pacchetto gratuito esegece.sgcWizard.Community su NuGet.

Sì. TsgcWpfWizard e TsgcAvaloniaWizard includono le loro pagine e i loro stepper, e le loro proprietà sono dependency property e proprietà Avalonia che puoi collegare a un view model. In questi due host una pagina contiene un solo figlio, di solito un pannello o una griglia. WinForms ha TsgcWinFormsWizard con pagine contenitore, come in VCL.

Sì. TsgcVCLStepper, TsgcFMXStepper e gli stepper .NET sono controlli autonomi con gli stessi cinque stati. Mettine uno sopra un form esistente per un checkout, lo stato di un ordine o il ciclo di vita di un ticket, imposta ActiveIndex dal tuo codice e attiva Clickable per permettere agli utenti di tornare a un passo completato.

Sì. BackCaption, NextCaption, FinishCaption e CancelCaption sono proprietà pubblicate, quindi si traducono con i normali strumenti di risorse dell'IDE o si impostano da codice. Vengono salvate solo quando differiscono dal valore predefinito, e i pulsanti si allargano con didascalie più lunghe. Le etichette dei passi provengono dalle didascalie e dalle descrizioni delle pagine.

Il wizard e lo stepper VCL supportano Delphi da 7 a 13 su Win32 e Win64, e C++ Builder da 2007 a 13. Il supporto FireMonkey inizia da Delphi XE6 per Windows, macOS, iOS, Android e Linux tramite FMXLinux. Il renderer headless si compila anche per Linux64 da Delphi 10.2.

Guida di sgcWizard

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 sgcWizard oggi

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