Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-09-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 65
Poder: 21
oliverinf Va por buen camino
TActionList y shorcuts sobre un control

Hola a todos, desearía saber si hay alguna manera de que las acciones de un TActionList, donde cada acción tiene un shorcut, se ejecuten sólo si el shorcut se realiza sobre un determinado control, por ejemplo, sobre un grid.

Desde ya muchas gracias.

Hasta luego.


Guillermo
Responder Con Cita
  #2  
Antiguo 09-09-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por oliverinf
sólo si el shorcut se realiza sobre un determinado control, por ejemplo, sobre un grid.
¿Qué quieres decir con ésto? Si te refieres a que sólo se ejecute la acción cuando la control activo es el DBGrid entonces puedes checar la propiedad ActiveControl del formulario en el evento OnExecute de la acción. Pero si la acción sólo se ha de realizar estando el DBGrid activo pues quizá no necesitas una acción sino simplemente ejecutar el código en el evento OnKeyDown u OnKeyUp del DBGrid.

// Saludos
Responder Con Cita
  #3  
Antiguo 09-09-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 65
Poder: 21
oliverinf Va por buen camino
Gracias por tu pronta respuesta.
La idea es tener al posibilidad de que las acciones se realicen, a través de shortcuts, sólo si están sobre un determinado control.
Te cuento, tengo un form un MainMenú, un PopMenu, tiene Edits y tiene un grid. En ese grid permito insertar, editar y eliminar filas, pero deseo que esas acciones se ejecuten al presionar las teclas Ins, F2 y Del, respectivamente. Además de poder ejecutarlas desde el MainMenu y desde el PopMenu (estos ejecutan las acciones de la ActionList).
El problema lo tengo cuando estoy en un edit y presiono Del para borrar el contenido del Edit, en ese momento se ejecuta la acción del ActionList y no es lo que deseo.

Hasta luego.
Responder Con Cita
  #4  
Antiguo 09-09-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Sí, tienes razón, tu planteamiento es del todo correcto.

Pues, como te dije, supongo que en el evento OnExecute miras si ActiveControl es el DBGrid:

Código Delphi [-]
procedure TForm1.Action1Execute(Sender: TObject);
begin
  if ActiveControl = DBGrid1 then
    { código a ejecutar }
end;

// Saludos
Responder Con Cita
  #5  
Antiguo 09-09-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 65
Poder: 21
oliverinf Va por buen camino
Muchas gracias roman, voy a tener que hacer eso.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 18:53:11.


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