FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ejecutar código mientras pulso un botón
Hola colegas. Me sabría decir alguien como puedo ejecutar el codigo que tengo dentro de una botón mientras lo mantengo pulsado.
P.ej. Hago un Query.next en el onclick y me desplazo por los registros del query mientras esté pulsado. Saludos. |
#2
|
||||
|
||||
Te recomiendo investigar el código del TSpinEdit.
Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#3
|
||||
|
||||
Mira este ejemplo, necesitas un Timer y aquí tienes el código:
Código:
procedure TForm1.Timer1Timer(Sender: TObject); begin Adoquery1.Next; end; procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Timer1.Enabled:=True; end; procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Timer1.Enabled:=False; end;
__________________
Guía de Estilo de los Foros Cita:
|
#4
|
||||
|
||||
Otra opción:
Declaras una variable MouseUp de tipo booleano en tu formulario y escribes eventos OnMouseDown y OnMouseUp del botón como sigue: Código:
procedure TForm1.Button1MouseDown(...); begin MouseUp := false; repeat Query.Next; Application.ProcessMessage; until MouseUp; end; procedure TForm1.Button1MouseUp(...); begin MouseUp := true; end; |
#5
|
||||
|
||||
Bien visto me gusta más la opción de marcoszorrilla porque así puedes controlar la velocidad de avance. Con mí opción la velocidad es inútilmente demasiado rápida .
// Saludos |
#6
|
|||
|
|||
Ok.
|
|
|
|