Form Transparente (GUI transparente)

Pregunta Sin Miedo no te cortes cualquier cosa para empezar - Autoit se comienza facilmente.Para Ordenes o Comandos sueltos. Ver nota como preguntar.
Responder
Marcelo
Aprendiz de Mago
Mensajes: 34
Registrado: 29 Ene 2011, 18:13

Form Transparente (GUI transparente)

Mensaje por Marcelo »

Hola, continúo esta pregunta que hice por otro lado por acá para hacer las cosas mas claras para futuras búsquedas..
Me gustaría poder hacer un form invisible o transparente y poner sobre el una imagen que a la vez tenga fondo invisible.
Por ejemplo si mi imagen es un círculo no me gustaría que se viera el recuadro alrededor del mismo.
Se entiende? Es muy difícil?
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: Form Transparente (GUI transparente)

Mensaje por Ximorro »

No, no es tan fácil... :smt017

En este comentario puse un ejemplo, era más complicado porque el png estaba animado. En ese caso no era perfecto porque el png tenía semitransparencias, si no tiene sombra es exactamente lo que quieres (y además de redondo con agujero) :smt003
http://www.emesn.com/autoitforum/viewto ... 9652#p9654
Si le quitas borde y título tendrás un donut volando sobre el escritorio...

Tienes que coger el png que modifiqué yo, porque el original que nos pone adrmil no estaba bien recortado, lo puse en este comentario:
http://www.emesn.com/autoitforum/viewto ... 9652#p9652

Te advierto que manejar un GUI así es complicado. Yo sólo he hecho unos pocos experimentos y ya le tengo bastante manía a GDI+, la librería para manejar gráficos. :smt005
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Marcelo
Aprendiz de Mago
Mensajes: 34
Registrado: 29 Ene 2011, 18:13

Re: Form Transparente (GUI transparente)

Mensaje por Marcelo »

Gracias otra vez Ximorro, entiendo que es complicado de utilizar una GUI sin GUI :smt002
Lo único que necesito es presentar un gráfico en una esquina de la pantalla y este no requiere de ninguna intervención del usuario. El ejemplo sería el parlante tachado de MUTE que alterna entre mostrar el GUI cuando esta muteado y ocultarlo cuando no lo esta. Ahora investigo un poquito con todo esto y subo el ejemplo terminado, si es que logro terminarlo :smt002 :smt001

Gracias

Marcelo
Marcelo
Aprendiz de Mago
Mensajes: 34
Registrado: 29 Ene 2011, 18:13

Re: Form Transparente (GUI transparente)

Mensaje por Marcelo »

Perdón por la re-respuesta...
Acá acabo de lograr más o menos lo que buscaba. :smt003 Esto está empezando a gustarme más de lo que creía :smt002
Aclaro que el código no es mio sino que lo encontré por ahí... Lo único que me faltaría para que sea perfecto sería poder combinarlo con $WS_EX_TOPMOST para que esté siempre ONTOP, pero no logro que pase porque se ve que no es compatible con el $WS_EX_LAYERED... :smt009
Bueno, a seguir investigando...
Gracias Por la ayuda,

Marcelo

Código: Seleccionar todo

#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
#Region ### START Koda GUI section ### Form=c:\Fuentes\Autoit\Mute\Mute.kxf
$Form1 = GUICreate("", 100, 100, 548, -1,  $WS_Popup ,$WS_EX_LAYERED)
; Habilitar para poder mover la ventana
;$hLabel = GUICtrlCreateLabel("", 0, 0, 100, 100, -1, $GUI_WS_EX_PARENTDRAG)
GUISetBkColor(0xFFFFFF)
$Pic1 = GUICtrlCreatePic(@ScriptDir & "\Mute.jpg", 0,0,0,0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
	EndSwitch
WEnd
Adjuntos
NO se fijen en el recorte de la imagen ya que es pésimo ;)
NO se fijen en el recorte de la imagen ya que es pésimo ;)
Mute.jpg (6.85 KiB) Visto 1530 veces
Marcelo
Aprendiz de Mago
Mensajes: 34
Registrado: 29 Ene 2011, 18:13

Re: Form Transparente (GUI transparente)

Mensaje por Marcelo »

SOLUCIONADO!!!!

Código: Seleccionar todo

$Form1 = GUICreate("", 100, 100, 548, -1,  $WS_Popup ,bitor($WS_EX_LAYERED, $WS_EX_TOPMOST))
Responder