Pregunta: Un poco de GDI

Tus preguntas. Algoritmos o Grupos de Comandos formando Programas Escripts.
Responder
Avatar de Usuario
Bits
Mensajes: 6
Registrado: 24 Oct 2012, 18:50

Pregunta: Un poco de GDI

Mensaje por Bits »

Hola! Vereis, necesito un poquito de ayuda. Estoy trabajando en un pequeño proyecto, vereis, como a veces puedo llegar a ser muy vago, estoy haciendome la tipica lista de "ToDo"(Lista de Tareas en inglés), pero para quitarme esta vagancia estoy añadiendole "mas emocion", bueno...tampoco os imagineis algo super divertido y genial, mas bien hago que las cosas de hacer sean un "Achievement" como en todos los juegos, logros, el codigo es bastante simple, la verdad, pero hay una parte grafica que me gustaria mucho hacer, que la tengo en mi mente de hace tiempo pero es usando GDI y no tengo ni idea!

Supongo que en realidad es muy simple, quiero hacer esto: Imagen Pero la cuestion, teniendo solo el fondo, ni letras ni el dibujo, añadir las letras con GDI y poner el dibujo que sea, el que yo elija, por GDI, que quede como en la imagen, como tres variables $WALLPAPER,$IMAGE,$TEXT, que $WALLPAPER sea la unica imagen, que es el fondo, y por GDI pegar $IMAGE y $TEXT, si es posible en la misma fuente el texto muchisimo mejor! :smt020
Gracias por adelantado.
AutoitAutoitAutoitAUTOIT!!!!!!
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Pregunta: Un poco de GDI

Mensaje por Chefito »

Por supuesto que se puede hacer por gdi, pero yo me pregunto, no te quieres complicar demasiado la vida para hacer solamente eso?
Si solo es lo que muestra tu imagen, yo haría el fondo creando un graphic para el fondo (GUICtrlCreateGraphic y GUICtrlSetGraphic), para la imagen utilizaría un objeto imagen (GUICtrlCreatePic), y para el texto un label (GUICtrlCreateLabel) con fondo transparente (GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)) y con un tipo de fuente, tamaño, grosor, etc (GUICtrlSetFont).
Si necesitas transparentar parte del gui, por si quieres darle alguna forma determinada, puedes utilizar la winapi _WinAPI_SetLayeredWindowAttributes. Mira su ejemplo en la ayuda. La técnica es pintar las partes del gui (con gráficos rellenos de un color) que quieras hacer transparente para darle forma. Se puede hacer con las apis de regiones, pero de esa forma lo veo más complicado.
Para que todo lo anterior sea posible, debes cambiar el estilo del gui y dejarlo sin barra y sin borde. Por ejemplo, puedes utilizar $WS_POPUP.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Avatar de Usuario
Bits
Mensajes: 6
Registrado: 24 Oct 2012, 18:50

Re: Pregunta: Un poco de GDI

Mensaje por Bits »

No se me habia ocurrido! Muchas gracias por la idea, en cuanto vuelva a casa la pruebo, puedo crear dos GUIs, la que "muestra los logros", que la haré con un script que ví en este foro hace tiempo que creaba una GUI transparente negra cubriendo toda la pantalla e impidiendo clickear en nada, excepto en la GUI principal.

Gracias :))
AutoitAutoitAutoitAUTOIT!!!!!!
Responder