ActiveX - Ayuda con ActiveX/OCX

 
Vista:

Ayuda con ActiveX/OCX

Publicado por Claudia (1 intervención) el 04/12/2004 23:44:51
Hola a todos
Estoy intentando realizar un control ActiveX/OCX en VB6 para que los botones dejen de tener aspecto rectangular y puedan adoptar otras formas (circulares, triangulares, etc). El problema está en que debo \"copiar\" en mi control el fragmento del Formulario en el que se coloque este, sea cual sea, mediante una llamada a la API Bitblt. Esa llamada debe hacerse en el evento RESIZE. Ahora bien, mi control no puede (porque no sé cómo hacerlo) averiguar en qué posición del Formulario se ha colocado, es decir, no permite las propiedades LEFT y TOP. Alguien sabría cómo hacerlo. Estaré eternamente agradecida a quien me ayude.

P.D. la llamada la realizo en USERCONTROL_RESIZE así: r=BitBlt (UserControl.hDC, 0, 0, UserControl.Width, UserControl.Height, UserControl.Parent.hDC, *, *, SRCCOPY)
¿Qué puedo poner en lugar de los asteriscos (*)?
Gracias a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Posición del ActiveX/OCX

Publicado por Benjo (7 intervenciones) el 28/12/2004 02:26:23
Para obtener la posiciòn del control en el contenedor, debés utilizar
el Parent del control y su colección Controls, como no sabés el indice de tu control, debés poner el Name del control lo cual obtenés de la Propiedad Ambient.DisplayName.
Es todo un intringulis, pero funciona.

UserControl.Parent.Controls(UserControl.Ambient.DisplayName).Top

Vi tu post recién hoy, lamento la tardanza.
Espero que te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar