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 20-10-2005
aranel aranel is offline
Miembro
 
Registrado: jul 2005
Posts: 37
Poder: 0
aranel Va por buen camino
relacionar un procedimiento con un evento de un objeto

Hola, aquí estoy otra vez :$ Mi problema es que en mi editor (el que estoy creando) tiene diferentes pestañas con unTMemo en cada una de ellas, pero necesito saber la linea actual en la que estoy, entonces defino el evento OnKeyDown, para qu eme diga cada vez que se pulsa un tecla en que línea estoy. Pero claro, eso lo puedo hacer para un objeto concreto de la clase TMemo,pero ese evento no está definido en los nuevos Memos que voy creando conforme se van abriendo pestañas.

Se me ha ocurrido crearme una clase, que contenga un objeto memo, al que le defino dicho evento, entonces para cada pestaña nueva me creo una instancia de esta clase. Mi problema entonces es que no se como asociarle el procedimiento que me creo para que me diga la linea actual, con el evento del objeto TMemo instanciado en esa clase. Yo lo de asociar un procedimiento con un evento siempre lo he hecho a través de la interfaz grafica, pero en este caso eso no me es posible porque esa clase no es un formulario, sino que hereda de TObject.

Aunque, no lo sé, pero puede que quizás haya otra foma más sencilla de hacerlo.
Responder Con Cita
  #2  
Antiguo 20-10-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Como otras formas de hacerlo, puede que sí, que estas existan. En todo caso, para lo que te ocupa, puedes definir un método en tu clase que sirva para el evento "OnKeyDown", siendo así que podrías asignar dicho método al evento en cuestión, algo más o menos así:

Código Delphi [-]
 type
   TMiClase = class(TObject)
   private
     {...}
     procedure EventoOnKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
     {...}
   end;
Por supuesto habrías de implementar ese método, pero, puesto que los parámetros coinciden con los que son precisos para responder al evento en cuestión, no tendrías problemas para asignar el método a eventos del tipo "TKeyEvent", es decir, por ejemplo, el "OnkeyDown" de un "TMemo".
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 20-10-2005
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
Realmente no entiendo qué relación hay entre obtener la línea actual en un memo y el evento OnKeyDown. Pienso que te estás complicando de más.

// Saludos
Responder Con Cita
  #4  
Antiguo 20-10-2005
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
puedes utilizar un mismo evento para todos los memo, simplemente usas:

memo2.onkeyDown := nombreprocedimientokeydownmemo1;

y listo.. usas uno para todos, igual puedes buscar informacion acerca de un manejador de eventos para varios controles..
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 21:46:59.


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