Alternância de texto do botão ao clicar

Na aula anterior, adicionamos dois botões: um altera o texto ao ser clicado e o outro fecha a janela atual. Nesta seção, vamos implementar uma lógica um pouco mais complexa no primeiro botão. Cada clique alterna o texto do botão, e o principal objetivo é estudar a sintaxe Pascal.

Abra o projeto criado anteriormente

Você pode editar diretamente a função de evento de clique no arquivo pas, ou acessar a função de evento do primeiro botão seguindo os passos abaixo.

Substitua o código da função de evento pelo trecho abaixo

procedure TForm1.Button1Click(Sender: TObject);
{ Usar a propriedade Tag do botão para armazenar estado e alternar o texto }
begin
  // Verificar valor da Tag: 0 = estado padrão, 1 = estado alternado
  if Button1.Tag = 0 then
  begin
    Button1.Caption := 'Press again';  // Alterar texto visível do botão
    Button1.Tag := 1;                  // Marcar estado como 1
  end
  else
  begin
    Button1.Caption := 'Press';        // Restaurar texto original
    Button1.Tag := 0;                  // Redefinir marcador para 0
  end;
end;Code language: JavaScript (javascript)

Passos para localizar o evento do botão

Abra seu projeto Lazarus salvo, troque para a tela de design do Form1 e clique no botão com rótulo Press (Button1) no formulário.

Com o controle selecionado, acesse a aba Events (Eventos) no Inspetor de Objetos (Object Inspector) à direita.

Localize o evento OnClick, clique na caixa de entrada à direita dele e depois clique no botão de reticências ... no final para saltar automaticamente para a função correspondente no editor de código.

Apague todo o código original, cole o código completo abaixo, salve o projeto, compile e execute o programa. Ao clicar no botão, o texto alternará repetidamente.

  1. Propriedade Tag: Propriedade inteira nativa de todos os controles de janela, utilizada para guardar marcadores numéricos personalizados. Aqui usamos apenas dois estados: 0 e 1.
  2. Primeiro clique: Tag=0 → texto muda para Press again, Tag recebe valor 1
  3. Segundo clique: Tag=1 → texto volta para Press, Tag é resetado para 0
  4. Clicadas repetidas alternam o texto continuamente, gerando um efeito de interruptor.

O código acima usa a propriedade Tag do botão para armazenar seu estado e implementar a alternância de texto.

Demonstração em execução

Alternância de texto do botão ao clicar

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *