Alternancia de texto del botón al hacer clic

En la clase anterior agregamos dos botones: uno cambia su texto al pulsarlo y el otro cierra la ventana actual. En esta sección implementaremos una lógica un poco más compleja en el primer botón. Cada pulsación alterna el texto del botón, y el objetivo principal es aprender la sintaxis de Pascal.

Abramos el proyecto que creamos anteriormente

Puedes editar directamente la función del evento clic en el archivo pas, o navegar hasta la función de evento del primer botón mediante el procedimiento que se indica a continuación.

Reemplaza el código de la función de evento con el siguiente fragmento

procedure TForm1.Button1Click(Sender: TObject);
{ Usar la propiedad Tag del botón para guardar el estado y alternar el texto }
begin
  // Comprobar valor de Tag: 0 = estado por defecto, 1 = estado alternado
  if Button1.Tag = 0 then
  begin
    Button1.Caption := 'Press again';  // Modificar el texto visible del botón
    Button1.Tag := 1;                  // Marcar el estado como 1
  end
  else
  begin
    Button1.Caption := 'Press';        // Restaurar el texto original
    Button1.Tag := 0;                  // Reiniciar el marcador a 0
  end;
end;Lenguaje del código: JavaScript (javascript)

Pasos para localizar el evento del botón

Abre tu proyecto guardado de Lazarus, cambia a la vista de diseño de Form1 y haz clic en el botón etiquetado como Press (Button1) del formulario.

Con el control seleccionado, ve a la pestaña Events (Eventos) del Inspector de Objetos (Object Inspector) situado a la derecha.

Busca la fila del evento OnClick, haz clic en el recuadro de entrada a su derecha y pulsa el botón de puntos suspensivos ... al final para saltar automáticamente a la función correspondiente en el editor de código.

Borra todo el código original, pega el código completo que aparece abajo, guarda el proyecto, compílalo y ejecútalo. Al pulsar el botón el texto alternará constantemente.

  1. Propiedad Tag: Propiedad de tipo entero integrada en todos los controles de ventana, usada para almacenar banderas numéricas personalizadas. Aquí solo usamos dos estados: 0 y 1.
  2. Primera pulsación: Tag=0 → el texto pasa a ser Press again, Tag toma el valor 1
  3. Segunda pulsación: Tag=1 → el texto vuelve a Press, Tag se reinicia a 0
  4. Pulsaciones repetidas alternan el texto indefinidamente, creando un efecto de interruptor.

El código anterior aprovecha la propiedad Tag del botón para almacenar su estado y lograr el efecto de alternancia de texto.

Ejemplo en ejecución

Alternancia de texto del botón al hacer clic

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *