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

sgcWizard, o Assistente e Stepper para Delphi, C++ Builder & .NET

Guie seus usuários por configuração, integração inicial e checkout, um passo claro de cada vez. Cada página que você adiciona vira um passo no stepper, Voltar, Avançar, Concluir e Cancelar já vêm prontos, e um único evento permite impedir o avanço até que a página seja válida.

VCL, FireMonkey, WinForms, WPF, AvaloniaDelphi 7 a 13 e C++ Builder 2007 a 13Todos os recursos na edição Community gratuita para .NETIncluído no sgcUI Enterprise
Assistente de integração no passo 2 de 4, Account, com o stepper no alto e os botões Back, Next e Cancel

Tudo o que um Assistente Precisa

Doze recursos que transformam um formulário longo em um fluxo guiado que os seus usuários terminam, com as regras e a aparência da sua aplicação.

Páginas, passos e regras

A estrutura de um assistente já está pronta: você adiciona as páginas e decide as regras.

Formulários de vários passos com stepper integrado

Páginas, passos e regras

Formulários de vários passos com stepper integrado

Formulários longos sobrecarregam os usuários, enquanto os mesmos campos divididos em poucos passos claros são concluídos. O TsgcVCLWizard transforma cada página em um passo: AddPage cria uma página e a sua entrada na faixa do stepper ao mesmo tempo, com uma legenda, uma linha de descrição e um glifo opcional. A faixa mostra onde o usuário está e o que falta, e a barra com Voltar, Avançar, Concluir e Cancelar já está lá. Cada página é um contêiner, então você projeta o conteúdo com controles comuns, e o assistente move o foco para o primeiro controle sempre que uma página abre.

  • AddPage cria um TsgcVCLWizardPage e o seu passo
  • Caption, Description e StepGlyph rotulam cada passo
  • ActivePageIndex e ActivePage trocam de página direto por código
  • Next, Back e GoToPage se movem exatamente como os botões
Ler o tópico da ajuda

Páginas, passos e regras

Segure o usuário até que a página seja válida

Deixar o usuário chegar ao resumo com um e-mail vazio significa um erro mais tarde, longe do campo que o causou. OnBeforePageChange dispara antes de cada movimento, seja o usuário pressionando Avançar, Voltar ou Concluir, clicando em um passo, ou o seu código chamando GoToPage. Ele informa a página que está sendo deixada e a que está para abrir, e um flag var aAllow impede o movimento. Como todo movimento para a frente tem um índice de destino maior, um único teste valida a página seja qual for o botão pressionado. Quando você veta, nada muda, então você mostra o motivo e coloca o foco no campo.

  • OnBeforePageChange(Sender, aFromIndex, aToIndex, aAllow) pode vetar qualquer movimento
  • aToIndex = PageCount significa que o usuário pressionou Concluir
  • Testar aToIndex < aFromIndex deixa passar os movimentos para trás
  • OnPageChanged dispara depois do movimento, por exemplo para preencher uma página de resumo
Ler o tópico da ajuda
Ignore os passos que não se aplicam

Páginas, passos e regras

Ignore os passos que não se aplicam

Fluxos reais se ramificam. Um cliente que escolhe a entrega padrão não precisa da página da transportadora, e uma conta pessoal não tem passo de empresa. Defina Skip em uma página e ela continua no assistente, mas Avançar e Voltar a pulam e o stepper desenha o seu passo como ignorado, com contorno tracejado, de modo que os usuários ainda veem a jornada inteira. Skip pode mudar a qualquer momento, normalmente a partir de uma caixa de seleção ou de uma escolha em uma página anterior. O botão Voltar é desabilitado automaticamente quando nenhuma página anterior pode ser alcançada, então os usuários nunca caem em uma página que não se aplica a eles.

  • Skip em um TsgcVCLWizardPage o tira do caminho
  • Os passos ignorados são desenhados no estado wssSkipped
  • GoToPage só vai para páginas que não são ignoradas
  • O demo Onboarding ignora a sua página Options a partir de uma caixa de seleção
Ler o tópico da ajuda
Concluir e Cancelar fazem o que você decidir

Páginas, passos e regras

Concluir e Cancelar fazem o que você decidir

Um assistente geralmente termina gravando alguma coisa, e você quer esse código em um só lugar. Na última página, o botão Avançar mostra a legenda Concluir e vira o botão padrão. Pressioná-lo, pressionar Enter ou chamar Finish executa antes a sua validação e depois dispara OnFinish, onde você grava os dados, fecha o formulário ou define o ModalResult de uma caixa de diálogo. O botão Cancelar, a tecla Escape e uma chamada a Cancel disparam OnCancel, então você pode perguntar antes de descartar o trabalho. O assistente nunca fecha nada por conta própria, então o fluxo continua sob o seu controle.

  • OnFinish executa depois que OnBeforePageChange permite a conclusão
  • OnCancel trata o botão Cancelar, a tecla Escape e Cancel
  • ShowCancel oculta o botão Cancelar em fluxos que precisam ser concluídos
  • FinishCaption define o texto do último botão Avançar
Ler o tópico da ajuda

Um stepper que se explica sozinho

A faixa de progresso diz aos usuários onde estão, o que foi feito e o que deu errado.

Stepper no alto, à esquerda ou oculto

Um stepper que se explica sozinho

Stepper no alto, à esquerda ou oculto

Fluxos curtos ficam melhores com os passos na parte de cima, enquanto os mais longos, com descrições, cabem melhor em uma coluna à esquerda, como em um instalador. StepperPosition move a faixa sem tocar nas suas páginas: wspTop mostra uma faixa horizontal de 80 pixels lógicos de altura, wspLeft uma faixa vertical de 200 pixels de largura, e wspNone a oculta para uma caixa de diálogo simples com páginas. A barra de botões fica embaixo. O demo Onboarding tem uma combo que troca a posição em tempo de execução, então você compara os três layouts com o seu próprio conteúdo em segundos.

  • StepperPosition recebe wspTop, wspLeft ou wspNone
  • A Orientation de um stepper é woHorizontal ou woVertical
  • CircleSize e ConnectorThickness dimensionam os marcadores e as linhas dos passos
  • ShowDescriptions mostra ou oculta a segunda linha de cada rótulo
  • Da direita para a esquerda para árabe e hebraico: o lado do indicador de etapas, a ordem das etapas, os conectores e os botões Voltar e Avançar com suas setas ficam espelhados
Ler o tópico da ajuda
Estados dos passos claros, com cor

Um stepper que se explica sozinho

Estados dos passos claros, com cor

Os usuários varrem um stepper em um segundo, então cada estado precisa ser óbvio. Os passos pendentes são contornos com um número suave, o passo ativo é um disco de destaque com um halo suave e uma legenda em negrito, os passos concluídos trazem um sinal de visto, os erros são um disco vermelho com um ponto de exclamação e os passos ignorados têm um contorno tracejado. Com AutoStates ativo, definir ActiveIndex conclui os passos anteriores e deixa pendentes os posteriores, enquanto os estados de erro e de ignorado são preservados. Desative AutoStates quando a sua aplicação decidir todos os estados por conta própria.

  • wssPending, wssActive, wssCompleted, wssError e wssSkipped
  • AutoStates deriva os estados de ActiveIndex
  • Um passo desabilitado é desenhado com cores esmaecidas
  • AccentColor recolore os passos ativo e concluídos
Ler o tópico da ajuda
Um stepper independente para fluxos de checkout

Um stepper que se explica sozinho

Um stepper independente para fluxos de checkout

Nem todo processo é um assistente. Um checkout, uma página de status de pedido ou o ciclo de vida de um chamado precisa do indicador de progresso sem as páginas. O TsgcVCLStepper é a mesma faixa como um controle próprio, horizontal ou vertical, com legendas, descrições e os cinco estados. Defina Clickable e os usuários voltam a um passo concluído com um clique ou com as setas, enquanto OnStepClick permite vetar o movimento. O demo Stepper mostra um stepper horizontal e um vertical lado a lado, com botões que marcam o passo ativo como erro ou como ignorado.

  • TsgcVCLStepper e TsgcFMXStepper funcionam sem um assistente
  • Steps é uma coleção editada com o editor de coleções padrão
  • Clickable e OnStepClick transformam passos concluídos em navegação
  • ActiveIndex move o progresso a partir do seu próprio código
Ler o tópico da ajuda

Se adapta à sua aplicação

O seu idioma, o seu designer, o seu tema e o seu framework.

As suas palavras em cada botão

Se adapta à sua aplicação

As suas palavras em cada botão

Um botão Next em inglês em uma aplicação em espanhol parece inacabado. As quatro legendas da barra de botões são propriedades publicadas com os padrões Back, Next, Finish e Cancel. Defina-as no Object Inspector, traduza-as com as ferramentas de recursos habituais da IDE ou atribua-as por código a partir da sua própria tabela de tradução. Uma legenda só é gravada no arquivo do formulário quando difere do padrão, e os botões crescem para acomodar palavras mais longas. Os rótulos dos passos vêm de Caption e Description das páginas, então são traduzidos junto com as páginas.

  • BackCaption, NextCaption, FinishCaption e CancelCaption
  • ShowCancel remove o botão Cancelar
  • Os rótulos dos passos seguem Caption e Description de cada página
  • O tópico de ajuda usa Anterior, Siguiente, Finalizar e Cancelar como exemplo
Ler o tópico da ajuda

Se adapta à sua aplicação

Projete cada página visualmente na IDE

Assistentes são formulários, e formulários são projetados melhor no designer de formulários. A página SGC Wizard da paleta registra o assistente e o stepper para VCL e FireMonkey. Clique com o botão direito no assistente e escolha Add Page: uma nova página é criada, exibida e selecionada, pronta para as suas edições, rótulos e caixas de seleção. Next Page e Previous Page movem entre as páginas no designer, e um clique em um passo da faixa mostra a sua página. Somente a página ativa fica visível, e a página exibida em tempo de design é a gravada no arquivo do formulário.

  • Os verbos Add Page, Next Page e Previous Page no menu de contexto
  • TsgcVCLWizard, TsgcVCLStepper, TsgcFMXWizard e TsgcFMXStepper na paleta
  • A faixa e a barra de botões são internas e nunca poluem o arquivo do formulário
  • Os Steps de um stepper independente usam o editor de coleções padrão
Ler o tópico da ajuda
Temas e teclado, Enter é Avançar

Se adapta à sua aplicação

Temas e teclado, Enter é Avançar

Um assistente deve parecer parte do resto da aplicação, com o mouse ou sem ele. Theme alterna entre os temas claro e escuro do sgcUICore, e AccentColor define a cor dos passos ativos, dos conectores concluídos e do botão padrão. O assistente também aplica o tema aos controles das suas páginas, então um TLabel, um TEdit ou um TCheckBox continua legível em uma página escura. Enquanto o foco está dentro do assistente, Enter é Avançar, ou Concluir na última página, e Escape é Cancelar, mas um memo ainda mantém o seu Enter para uma nova linha.

  • Theme recebe utDefault (segue o tema da aplicação), utLight, utDark ou utCustom
  • AccentColor é uma cor ARGB, e 0 mantém o destaque do tema
  • Os controles filhos com a sua própria propriedade Theme recebem o tema do assistente
  • Um stepper em foco se move com as setas enquanto Clickable está ativo
Ler o tópico da ajuda
Imagens do stepper para documentação e testes

Se adapta à sua aplicação

Imagens do stepper para documentação e testes

Documentação, e-mails e testes de regressão visual muitas vezes precisam de uma imagem dos passos, e não de um controle ao vivo. O renderizador em sgcWizard_Render pinta um TsgcStepperModel e a barra de botões sem janela e sem VCL ou FireMonkey, de modo que um programa de console, um serviço, um teste de unidade ou um servidor web pode produzir o mesmo stepper como imagem. Ele compila em todas as plataformas, inclusive Linux64. Largura e altura são pixels lógicos e um fator de escala gera imagens nítidas: 640 por 100 na escala 2 é um PNG de 1280 por 200.

  • sgcWizardSaveToPNG e sgcWizardSaveToSVG gravam um arquivo ou um stream
  • sgcWizardRender pinta em qualquer canvas do sgcUICore
  • sgcWizardSaveButtonBarToPNG e sgcWizardSaveButtonBarToSVG desenham a barra de botões
  • No .NET, o pacote esegece.sgcWizard.Rendering grava PNG no Windows, no Linux e no macOS
Ler o tópico da ajuda

Se adapta à sua aplicação

Vincule ao seu view model no WPF e no Avalonia

Quem desenvolve em WPF e Avalonia espera vincular, não escrever code-behind. Nesses hosts, as propriedades voltadas ao usuário do assistente, das suas páginas e do stepper são dependency properties ou propriedades do Avalonia, então se vinculam a um view model, recebem valores de um Style e podem ser animadas. ActivePageIndex se vincula em TwoWay por padrão, porque o assistente o altera sozinho em Next, Back e cliques nos passos, de modo que o seu view model sempre conhece o passo atual. Os controles WinForms mantêm propriedades simples, e os três hosts usam os nomes do Delphi.

  • TsgcWpfWizard e TsgcAvaloniaWizard, com as suas páginas e steppers
  • Um campo estático como ActivePageIndexProperty para cada propriedade vinculável
  • Os eventos mantêm os nomes do Delphi, como OnBeforePageChange, como propriedades de delegate
  • No WPF e no Avalonia uma página contém um filho; no WinForms uma página é um contêiner
Ler o tópico da ajuda

Veja o sgcWizard em ação

sgcWizard dentro das demos da suíte sgcUI: aplicações completas que rodam offline com dados simulados integrados.

Quem cria com o sgcWizard

Integração inicial e configuração do primeiro uso

Os primeiros minutos decidem se um novo usuário fica. Divida a criação da conta, as preferências e um resumo em quatro páginas curtas, valide o nome e o e-mail em OnBeforePageChange antes de o usuário avançar e ignore a página de opções para quem quer os padrões. OnPageChanged preenche o resumo e OnFinish grava a conta. O demo Onboarding é exatamente esse fluxo, com uma troca claro e escuro e um seletor de posição do stepper para experimentar.

  • Validação
  • Páginas ignoradas
  • Concluir e Cancelar
Execute o demo Onboarding

Checkout e entrada de pedidos

A entrada de pedidos segue um caminho fixo: carrinho, endereço, entrega, pagamento e confirmação. Use o assistente quando cada passo for uma página de campos, ou coloque um stepper independente acima de um formulário que você já tem. Os passos concluídos viram atalhos clicáveis de volta, um pagamento que falhou aparece como um passo de erro em vermelho, e um passo de entrega que não se aplica continua visível com contorno tracejado. O demo Stepper mostra todos os estados, na horizontal e na vertical.

  • Stepper independente
  • Estados dos passos
  • Passos clicáveis
Execute o demo Stepper

Assistentes de configuração e importação

Ferramentas técnicas precisam de assistentes para tarefas que os usuários fazem raramente: conectar a um banco de dados, importar um arquivo, configurar um dispositivo. Um assistente com o stepper à esquerda lista cada passo com uma descrição, OnBeforePageChange confere os dados antes de o usuário avançar e as legendas dos botões seguem o idioma da ferramenta. O mesmo assistente roda no FireMonkey, como mostra o demo OnboardingFMX, e no WinForms, no WPF e no Avalonia.

  • Stepper à esquerda
  • Validação
  • Legendas dos botões
Execute o demo OnboardingFMX

A Wizard in a Few Lines

The same API in Delphi, C++ Builder and C#: add the pages, mark one as optional, and validate before the user leaves the Account page.

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

Execute os demos do sgcWizard

Onboarding e Stepper acompanham o Delphi VCL e o C++ Builder, OnboardingFMX acompanha o Delphi FireMonkey, e a edição .NET tem Onboarding e Stepper para WinForms, WPF e Avalonia.

Onboarding

Onboarding

Quatro páginas, Welcome, Account, Options e Summary. OnBeforePageChange veta o Avançar até que o nome e o e-mail sejam válidos, uma caixa de seleção ignora a página Options, OnPageChanged preenche o resumo e OnFinish o exibe. Uma troca de tema e uma combo de StepperPosition permitem experimentar todos os layouts.

Stepper

Stepper

Dois controles TsgcVCLStepper independentes, horizontal e vertical, com os mesmos cinco passos. AutoStates conclui os passos anteriores ao ativo, botões marcam um passo como erro ou ignorado, e um clique em um passo concluído move os dois steppers para trás.

OnboardingFMX

O fluxo Onboarding com TsgcFMXWizard e quatro filhos TsgcFMXWizardPage: o mesmo veto de validação, a mesma página Options ignorada, um resumo ao concluir e uma caixa de seleção de tema escuro. Somente Delphi.

Demos compilados

Executáveis prontos para rodar de todos os produtos sgcUI, sem nada para instalar.

Baixar sgcUI_bin.zip →

Onde o sgcWizard está incluído

O sgcWizard faz parte do sgcUI Enterprise e também é vendido separadamente. O sgcWizard também está incluído no pacote All-Access.

sgcWizard pacote individual

€149 / desenvolvedor, código-fonte completo, 1 ano de atualizações.

Comprar o sgcWizard → Ver preços →

sgcUI Enterprise

Todos os 14 produtos sgcUI, a partir de €699.

Ver Enterprise →

sgcWizard para .NET

esegece.sgcWizard.WinForms, .Wpf e .Avalonia no NuGet, pelo mesmo preço do Delphi. A edição Community gratuita (esegece.sgcWizard.Community) tem todos os recursos, só o aviso de avaliação é diferente.

Comprar sgcWizard .NET →

As builds Registrada, de Avaliação e Community incluem todos os recursos do sgcWizard. Só o aviso de avaliação é diferente.

RecursoCommunity (gratuita)Registrada
Assistente com páginas e a faixa do stepper✓✓
Validação com OnBeforePageChange✓✓
Páginas ignoradas e os cinco estados dos passos✓✓
Stepper independente✓✓
Legendas dos botões, temas claro e escuro, cor de destaque✓✓
Saída headless em PNG e SVG✓✓

Frameworks e plataformas suportados

Componentes do sgcWizard

TsgcVCLWizard e TsgcVCLWizardPage

O assistente VCL e as suas páginas. Um editor de componente adiciona páginas em tempo de design, a partir da página SGC Wizard da paleta.

TsgcFMXWizard e TsgcFMXWizardPage

O mesmo assistente para FireMonkey no Windows, macOS, iOS, Android e Linux (FMXLinux).

TsgcVCLStepper e TsgcFMXStepper

O controle stepper independente, horizontal ou vertical, para qualquer fluxo de vários passos.

TsgcStepperModel

O modelo independente de framework por trás dos dois controles: passos, estados e layout, com sgcWizardSaveToPNG e sgcWizardSaveToSVG para saída headless.

Controles .NET

TsgcWinFormsWizard, TsgcWpfWizard e TsgcAvaloniaWizard, cada um com as suas classes de página e de stepper.

Dois demos em cada linguagem

Onboarding, um cadastro de quatro páginas com validação, e Stepper, um stepper independente com estados.

AlvoComponentePlataformas
Delphi 7 a 13, VCLTsgcVCLWizard, TsgcVCLStepperWin32, e Win64 a partir do XE2
Delphi XE6 a 13, FireMonkeyTsgcFMXWizard, TsgcFMXStepperWindows, macOS, iOS, Android e Linux (FMXLinux)
C++ Builder 2007 a 13TsgcVCLWizard, TsgcVCLStepperHeaders .hpp gerados e bibliotecas estáticas
Delphi 10.2 a 13, independente de frameworkTsgcStepperModelLinux64, por exemplo para renderizar um stepper em PNG ou SVG em um servidor
.NETTsgcWinFormsWizard, TsgcWpfWizard, TsgcAvaloniaWizardWinForms, WPF e Avalonia

Perguntas frequentes

Sim. OnBeforePageChange dispara antes de cada movimento, pelos botões, pelo teclado, por um clique em um passo ou pelo seu próprio código. Ele recebe a página que está sendo deixada e a que está para abrir, e definir aAllow como False mantém o usuário onde está. Concluir também o dispara, com PageCount como destino, então a última página é validada da mesma forma.

Sim. Solte um TsgcVCLWizard ou um TsgcFMXWizard em um formulário, clique com o botão direito e escolha Add Page. Cada página é projetada como qualquer outro contêiner, com os seus próprios controles. Os verbos Next Page e Previous Page, ou um clique em um passo da faixa, mostram as outras páginas no designer.

Sim. O sgcWizard é construído a partir de um único código-fonte, e as edições Registrada, de Avaliação e Community têm todos os recursos: os assistentes, os steppers, a validação, as páginas ignoradas, os estados dos passos, os temas e a saída headless em PNG e SVG. A Community é o pacote gratuito esegece.sgcWizard.Community no NuGet.

Sim. O TsgcWpfWizard e o TsgcAvaloniaWizard vêm com as suas páginas e steppers, e as suas propriedades são dependency properties e propriedades do Avalonia que você pode vincular a um view model. Nesses dois hosts, uma página contém um filho, normalmente um painel ou uma grade. O WinForms tem o TsgcWinFormsWizard com páginas contêiner, como no VCL.

Sim. TsgcVCLStepper, TsgcFMXStepper e os steppers .NET são controles independentes com os mesmos cinco estados. Coloque um acima de um formulário existente para um checkout, um status de pedido ou o ciclo de vida de um chamado, defina ActiveIndex pelo seu código e ative Clickable para deixar os usuários voltarem a um passo concluído.

Sim. BackCaption, NextCaption, FinishCaption e CancelCaption são propriedades publicadas, então são traduzidas com as ferramentas de recursos habituais da IDE ou definidas por código. Só são gravadas quando diferem do padrão, e os botões crescem com legendas mais longas. Os rótulos dos passos vêm das legendas e descrições das páginas.

O assistente e o stepper VCL suportam o Delphi 7 a 13 em Win32 e Win64, e o C++ Builder 2007 a 13. O suporte ao FireMonkey começa no Delphi XE6 para Windows, macOS, iOS, Android e Linux por meio do FMXLinux. O renderizador headless também compila para Linux64 a partir do Delphi 10.2.

Ajuda do sgcWizard

3,000+Desenvolvedores
20+Anos
761+Componentes
30+Integrações de API
5Plataformas
Garantia de reembolso de 30 diasNão ficou satisfeito? Solicite o reembolso total em até 30 dias após a compra. Ver política de reembolso

Experimente o sgcWizard Hoje

A avaliação do sgcUI inclui o sgcWizard e todos os outros produtos sgcUI.