Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-04-2004
senpiterno senpiterno is offline
Miembro
 
Registrado: abr 2004
Posts: 112
Poder: 20
senpiterno Va por buen camino
Obtener Handle de un objeto

Hola amigos.

Me gustaria saber como obtengo el Handle de un objeto. Se que muchos objetos con los que trabaja Delphi tienen incorporada la propiedad Handle, de manera que se puede acceder a ella en forma directa, pero tambien existen objetos que no la traen al menos de forma explicita, por ejempo el TPaintBox.
¿ como puedo objener el Handle de un objeto cuando este no viene como una propiedad explicita del objeto, por ejemplo del tipo TObject ?. A se me olvidava un Handle es de tipo LongInt o LongWord.

De antemano se agradece cualquier ayuda.
Responder Con Cita
  #2  
Antiguo 21-04-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 26
delphi.com.ar Va por buen camino
En la VCL los objetos que tienen Handle del tipo HWnd (como la propiedad hWnd de VB), son aquellos heredados de TWinControl y hacen referencia al Handle que identifica la ventana. El TPaintBox es un TGraphicControl, y no posee una ventana asociada, si quieres puedes obtener el Handle del Canvas que es el handle del DeviceContext que dubuja el control.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 21-04-2004
senpiterno senpiterno is offline
Miembro
 
Registrado: abr 2004
Posts: 112
Poder: 20
senpiterno Va por buen camino
delphi.com.ar, podrias ser mas explicito, si pudieras mostrarme un ejemplo seria de maravillas.

Gracias.
Responder Con Cita
  #4  
Antiguo 22-04-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 26
delphi.com.ar Va por buen camino
¿Para que necesitas el Handle?
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #5  
Antiguo 22-04-2004
senpiterno senpiterno is offline
Miembro
 
Registrado: abr 2004
Posts: 112
Poder: 20
senpiterno Va por buen camino
delphi.com.ar, En Vb contrui un objeto que tomaba como referencia un picturebox y sobre el cual generaba un gradian en el que escribia un texto (tipo barra de inicio de windows 98) mayormente construido con funciones de la API de Windows. En Delphi he intentado buscar un objeto como el picturebox y el que mas se le parece es el Paintbox, pero como tu me dijiste anteriormente no se puede acceder a su Handle (hwnd en Vb), propiedad que necesito para poder referenciar al objeto en las funciones de la API. Ademas tampoco en podido encontrar la propiedad hdc (devuelve un controlador proporcionado por el entorno operativo Microsoft Windows para el contexto de dispositivo de un objeto en VB) necesaria para poder implementar el objeto gradian mencionado.
Si me puedes dar alguna idea, alternativa o ayuda para solucionar el problema te lo agradecere.

Gracias de antemano.
Responder Con Cita
  #6  
Antiguo 22-04-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Cool

Creo que el amigo delphi.com.ar ya te habia respondido eso...
Cita:
Empezado por delphi.com.ar
si quieres puedes obtener el Handle del Canvas que es el handle del DeviceContext que dubuja el control.
En otras palabras... el handle que buscas, es el PaintBox1.Canvas.Handle.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #7  
Antiguo 22-04-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 26
delphi.com.ar Va por buen camino
Cita:
Empezado por jachguate
En otras palabras... el handle que buscas, es el PaintBox1.Canvas.Handle.
Eso mismo, y otra cosa: posiblemente te "ahorres" llamadas directas a la WinApi ya que el objeto canvas encapusla las funciones básicas de dibujo de la WinApi

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 10:08:39.


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