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 07-06-2006
samantha jones samantha jones is offline
Miembro
 
Registrado: ago 2004
Posts: 46
Poder: 0
samantha jones Va por buen camino
KeyPreview en Forma cuyo Parent es un Panel

Hola a tod@s,

Tengo una App en donde creo dinámicamente una forma("x") dentro de un TPanel, mi problema es que en la forma "x" tengo el keypreview=true y en la forma del Panel también, el evento onkeyup que prevalece es el de la forma del panel.... ¿Como le hago para poder utilizar el OnKeyUp de la Forma "x"?

Saludos
Samantha
Responder Con Cita
  #2  
Antiguo 07-06-2006
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Desactiva el keypreview del Form Panel, cuando necesites usar el key de la forma x.

Yo no alcanzo a entender porque tenerlo activado en ambos.
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #3  
Antiguo 07-06-2006
samantha jones samantha jones is offline
Miembro
 
Registrado: ago 2004
Posts: 46
Poder: 0
samantha jones Va por buen camino
Deshabilite el KeyPreview de la forma del panel y sigue sin reconocer el OnKeyUp de la forma "X"... Alguna Idea?
Responder Con Cita
  #4  
Antiguo 07-06-2006
Yosuun Yosuun is offline
Miembro
 
Registrado: jun 2004
Ubicación: Bilbao-Bizkaia
Posts: 28
Poder: 0
Yosuun Va por buen camino
Prueba utilizando el componente de applicationeventes e interceptando ONMEssage

Código Delphi [-]
 
  If Msg.message = WM_KEYDOWN Then
     Begin
       If Msg.wParam = VK_Decimal Then
          Begin
            If Screen.ActiveControl is TDBEDIT Then
               Begin
                 IF (Screen.ActiveControl as TDBEDIT).Field.DataType=ftFloat     Then Msg.wParam:=188;
               End;
            If Screen.ActiveControl is TRxDBCalcEDIT Then
               Begin
                 IF (Screen.ActiveControl as TRxDbCalcEDIT).Field.DataType=ftFloat Then Msg.wParam:=188;
               End;
          End;
       If Msg.wParam = VK_Escape Then
          BEgin
             Screen.ActiveForm.Close;
          End;
       If ( (Msg.wParam=VK_RETURN) or
            (Msg.wParam=VK_UP) or
            (Msg.wParam=VK_DOWN) ) and not (Screen.ActiveControl is TButton)
                            and not (Screen.ActiveControl is TRxDBGrid)
                            and not (Screen.ActiveControl is TDBGrid) Then
          Begin
            If (Msg.wParam=VK_RETURN) Then
               Begin
                 Msg.wParam:=0;
                 Screen.ActiveForm.PerForm(WM_NextDlgCtl,0,0);
               End;
            If (Msg.wParam=VK_DOWN) Then
               Begin
                 Msg.wParam:=0;
                 Screen.ActiveForm.PerForm(WM_NextDlgCtl,0,0);
               End;
            If (Msg.wParam=VK_UP) Then
               Begin
                 Msg.wParam:=0;
                 Screen.ActiveForm.PerForm(WM_NextDlgCtl,1,0);
               End;
          End;
     End;


Espero que te sea de ayuda un saludo.

Última edición por roman fecha: 07-06-2006 a las 17:17:49.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
TreeView parent Caro OOP 4 09-11-2005 17:37:45
Problema con el KeyPreview Javi2 Varios 2 10-03-2005 18:31:20
En un lugar de la Mancha cuyo nombre fue.. marcoszorrilla Noticias 21 15-12-2004 15:47:36
Opciones de Parent pepelu1975 OOP 7 26-05-2004 18:35:36
Escoger en una tabla sólo los registros cuyo código es par lolobs SQL 3 25-09-2003 19:55:16


La franja horaria es GMT +2. Ahora son las 01:34:09.


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