Programación General > Visual Basic 6.0 e inferiores
Imagenes Transparentes
CesarWeb:
Hola gentes
me gustaria saber si alguien tiene idea como se hace para que el Vb te deje hacer una imagen que sea transparente y que si yo hago un click en la imagen me deje ingresar a un formulario que se habre una nueva ventana ...
Gracias por todo, saludos. Cesar :hola:
inorc:
Hola, creo que antes de nada deberías comprobar que la imagen que utilizas tiene el fondo transparente y guardarla con formato que admita fondos transparentes como *.GIF. Y luego sólo insertalo en el picturebox. Yo lo he hecho y me funciona.
Suerte.
B)
UserCode:
Hola, aqui tienes un codigo para tener las cuestiones transparentes en tus ventanas, cualquier objeto dentro de la ventana sera transparente igual que la ventana, no sé si es solo la imagen o la ventana completa, mira a ver como te sirve esto aqui te lo dejo. Sino, haciendo una ventana a parte con un control Picture por ejemplo que abarque casi los bordes de la ventanita y la llamas para que cargue la imagen.
--- Código: Text --- 'Codigo Interezante para forzar transparencia en un form de manera muy sencilla y con transparencia graduable Private Declare Function GetWindowLong Lib "USER32" Alias "GetWindowLongA" _(ByVal hWnd As Long, ByVal nIndex As Long) As LongPrivate Declare Function SetWindowLong Lib "USER32" Alias "SetWindowLongA" _(ByVal hWnd As Long, ByVal nIndex As Long, _ByVal dwNewLong As Long) As LongPrivate Const GWL_STYLE = (-16)Private Const GWL_EXSTYLE = (-20)'Requires Windows 2000 or later:Private Const WS_EX_LAYERED = &H80000 Private Declare Function SetLayeredWindowAttributes Lib "USER32" (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As LongPrivate Const LWA_COLORKEY = &H1Private Const LWA_ALPHA = &H2 Public Sub MakeWindowTransparent(ByVal hWnd As Long, ByVal alphaAmount As Byte)Dim lStyle As LonglStyle = GetWindowLong(hWnd, GWL_EXSTYLE)lStyle = lStyle Or WS_EX_LAYEREDSetWindowLong hWnd, GWL_EXSTYLE, lStyleSetLayeredWindowAttributes hWnd, 0, alphaAmount, LWA_ALPHAEnd Sub 'La transparencia es graduable modificando el alphaamount en este caso esta en 150 mientras menor es este valor mas transparente se tornaPrivate Sub Form_Load()Call MakeWindowTransparent(Form1.hWnd, 150)End Sub
Saludos :hola:
patitofeo:
¿Necesitas una imagen transparente o una imagen con fondo transparente?
Para imagenes transparentes--------> TRUQUITO
Create un picturebox e inserta una imagen, determina un color transparente y aplica la mascara.
La imagen que insertes debe tener un pixel del color de la mascara intercalado entre cada uno de la imagen. No se si me entiendes.
Deberias retocar la imagen de modo que un pixel si y uno no (como en un ajedrez) sea del color de la mascara. Por supuesto pierdes bastante calidad pero es una forma facil de conseguir este efecto.
Espero que me hayan entendido.
Saludos y ya me contaran
Coneira:
Hola comparto lo que dijo inorc, puedes crear una imágen que tenga fondo transparente, si tienes una imágen con distinta extensión que *.gif, puedes usar visual studio.net para convertir cualquier imágen en gif, sólo tienes q poner el fondo de color blanco, luego guardarlo como gif (Ya sabes menu - Guardar como - Formato Gif), ya de ahi lo puedes llevar a un pictureBox o a un Image ... Luego ya en su evento Click de cualquiera de los os objetos escribes el código:
--- Código: Text --- ' Objeto ImagePrivate Sub Image1_Click() Form1.Show ' Utilizas el nombre del formulario que aparecerá seguida de .ShowEnd Sub
--- Código: Text --- Objeto PictureBoxPrivate Sub Picture1_Click() Form1.ShowEnd Sub Espero que haya sido a eso a la que te referías :blink: ... y si no ... :P ya p al menos eso del uso del Visual Studio.NET para hacer gifs :rolleyes: ... sólo seleccionas en nuevo archivo icono file y arrastrsa la imágen de cualquier formato .....
Bye bye :whistling:
Navegación
[#] Página Siguiente
Ir a la versión completa