Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   varias Fn en un mismo formulario (https://www.clubdelphi.com/foros/showthread.php?t=83828)

feliz-58 02-08-2013 22:52:31

varias Fn en un mismo formulario
 
Mis saludos para todos en el club.

Tengo la siguiente forma para usar las funciones en un formulario:

Código Delphi [-]
If key = vk_F1 
Then
Button1.click;
Cual seria la forma para agregar varias funciones?

Intente:

Código Delphi [-]
If key = vk_F1 
Then
Button1.Click;

If key = vk_F2
Then 
Button2.click;

Pero no funciono. Se ejecutan los dos cuando le das a F1.

SALUDOS A TODOS.

ecfisa 02-08-2013 23:10:03

Cita:

Empezado por feliz-58 (Mensaje 464891)
...
Intente:

Código Delphi [-]
If key = vk_F1 
Then
Button1.Click;

If key = vk_F2
Then 
Button2.click;

Pero no funciono. Se ejecutan los dos cuando le das a F1.

Hola.

Si el form tiene la propiedad KeyPreview = True y ese código está en el evento OnKeyDown del form tiene que funcionar correctamente, llamando al método OnClick de Button1 cuando se presione F1 y OnClick de Button2 cuando se presione F2.

¿ En que evento del form está el código ?

Saludos. :)

ecfisa 02-08-2013 23:16:28

Hola de nuevo.

Olvidé mencionarte que cuando las teclas a evaluar son muchas es más simple hacerlo de este modo:
Código Delphi [-]
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  case Key of
   VK_F1: Button1.Click;
   VK_F2: Button2.Click;
   VK_F3: Button3.Click;
   ...
  end;
end;

Saludos. :)

feliz-58 02-08-2013 23:27:25

Cita:

Empezado por ecfisa (Mensaje 464895)
Hola.

Si el form tiene la propiedad KeyPreview = True y ese código está en el evento OnKeyDown del form tiene que funcionar correctamente, llamando al método OnClick de Button1 cuando se presione F1 y OnClick de Button2 cuando se presione F2.

¿ En que evento del form está el código ?

Saludos. :)

Hice todo eso, pensaba lo mismo pero me hacia el error que te comente.
Saludos!

feliz-58 02-08-2013 23:28:16

Cita:

Empezado por ecfisa (Mensaje 464897)
Hola de nuevo.

Olvidé mencionarte que cuando las teclas a evaluar son muchas es más simple hacerlo de este modo:
Código Delphi [-]
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  case Key of
   VK_F1: Button1.Click;
   VK_F2: Button2.Click;
   VK_F3: Button3.Click;
   ...
  end;
end;

Saludos. :)

Excelente, funciono perfectamente.

Gracias.
Saludos!


La franja horaria es GMT +2. Ahora son las 10:38:22.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi