[R] Afficher une image transparente au centre de l'écran.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
AlapOwner
Niveau 1
Niveau 1
Messages : 11
Enregistré le : sam. 20 nov. 2010 17:09
Status : Hors ligne

[R] Afficher une image transparente au centre de l'écran.

#1

Message par AlapOwner »

Bonjour,

Je débute dans ce language et j'aimerai bien connaitre le moyen d'afficher une image transparente au centre de l'écran. En fait ca serai pour faire un viseur. Il suffirait a la pression d'un bouton, faire apparaitre l'image. Est-ce possible?

Merci d'avance !
Modifié en dernier par AlapOwner le jeu. 25 nov. 2010 21:53, modifié 1 fois.
Avatar du membre
roselito13
Niveau 4
Niveau 4
Messages : 93
Enregistré le : ven. 07 août 2009 23:39
Localisation : Entre le Pôle Nord et le Pôle Sud
Status : Hors ligne

Re: [..] Afficher une image transparente au centre de l'écran.

#2

Message par roselito13 »

Voici un exemple en utilisant l'UDF <GDIPlus.au3>

Code : Tout sélectionner

$GUI = GUICreate("Test", 250, 250, -1, -1, -1, $WS_EX_LAYERED)
; Load layered image
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Images.png")
GUISetState()
 
Voila, il faut donc juste crée une GUI "invisible" et y mettre une image "visible" :)
\ 1337 /
AlapOwner
Niveau 1
Niveau 1
Messages : 11
Enregistré le : sam. 20 nov. 2010 17:09
Status : Hors ligne

Re: [..] Afficher une image transparente au centre de l'écran.

#3

Message par AlapOwner »

Merci de votre réponse seulement voila je débute vraiment et je ne comprend pas bien tout cela. Voila mon code selon ce que j'ai compris :oops:

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <NomadMemory.au3>
#include <GDIPlus.au3>
#Region ### START Koda GUI section ### Form=
Global $Form1 = GUICreate("CrossHair", 185, 38, 197, 152)
Global $Button1 = GUICtrlCreateButton("Afficher le crosshair", 8, 8, 171, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
 $nMsg = GUIGetMsg()
 Switch $nMsg
  Case $GUI_EVENT_CLOSE
   Exit
   Case $Button1
       $GUI = GUICreate("Test", 250, 250, -1, -1, -1, $WS_EX_LAYERED)
       _GDIPlus_Startup()
       $hImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & "C:\Users\User\Desktop\AutoIT\Tuto\curseur.png")
       GUISetState()
 EndSwitch
WEnd
 
De plus j'aimerai partager ce logiciel et si on doit donner un chemin local tout le monde devrait avoir le meme ce qui n'est pas bien pratique.
Désolé si je suis vraiment un boulet ^^
Merci de votre aide.
Avatar du membre
roselito13
Niveau 4
Niveau 4
Messages : 93
Enregistré le : ven. 07 août 2009 23:39
Localisation : Entre le Pôle Nord et le Pôle Sud
Status : Hors ligne

Re: [..] Afficher une image transparente au centre de l'écran.

#4

Message par roselito13 »

Voici le code :

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <NomadMemory.au3>
#include <GDIPlus.au3>
#Region ### START Koda GUI section ### Form=
Global $Form1 = GUICreate("CrossHair", 185, 38, 197, 152)
Global $Button1 = GUICtrlCreateButton("Afficher le crosshair", 8, 8, 171, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###



While 1
    $MSG = GUIGetMsg($Form1)
    Select
        Case $MSG = $Button1
            $GUI = GUICreate("Test", 250, 250, -1, -1, -1, $WS_EX_LAYERED) ;Crée une GUI "invisible"
            _GDIPlus_Startup() ;Initialise la fonction pour afficher des image PNG
            $hImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Images.png") ;Affiche l'image PNG sur l'écran
            GUISetState()
    Endselect
WEnd
Et pour se qui est de l'image, la façon la plus simple et de la mettre a coter de l’exécuteur.
Puis pour par exemple déplacer l'image, il suffit de déplacer le GUI.
\ 1337 /
AlapOwner
Niveau 1
Niveau 1
Messages : 11
Enregistré le : sam. 20 nov. 2010 17:09
Status : Hors ligne

Re: [..] Afficher une image transparente au centre de l'écran.

#5

Message par AlapOwner »

Je ne comprend pas, quand j'appuie sur le bouton la deuxieme s'ouvre bien mais invisible, et l'image ne s'affiche pas.
Image

Je ne sais pas si on voit trés bien sur ce screen mais je ne suis pas en mesure d'expliquer plus :? Avez vous vous-meme essayé le code? Ca vient surement de moi mais d'où ...
Avatar du membre
Jerome
Niveau 9
Niveau 9
Messages : 661
Enregistré le : mar. 07 avr. 2009 08:35
Localisation : Picardie
Status : Hors ligne

Re: [..] Afficher une image transparente au centre de l'écran.

#6

Message par Jerome »

Coucou,



Il y a de grande chance pour que sa soit lié au faite que vous ayez windows 7.



Jérôme
Avatar du membre
roselito13
Niveau 4
Niveau 4
Messages : 93
Enregistré le : ven. 07 août 2009 23:39
Localisation : Entre le Pôle Nord et le Pôle Sud
Status : Hors ligne

Re: [..] Afficher une image transparente au centre de l'écran.

#7

Message par roselito13 »

@AlapOwner as surement raison je suis sous Windows XP, et cela fonctionne.
Je ne connait pas d'autre solution désole :s, a voir avec un autre membre.
\ 1337 /
Avatar du membre
Jerome
Niveau 9
Niveau 9
Messages : 661
Enregistré le : mar. 07 avr. 2009 08:35
Localisation : Picardie
Status : Hors ligne

Re: [..] Afficher une image transparente au centre de l'écran.

#8

Message par Jerome »

Re-Coucou,



Peut - être que ce post vous aidera.





Jérôme
AlapOwner
Niveau 1
Niveau 1
Messages : 11
Enregistré le : sam. 20 nov. 2010 17:09
Status : Hors ligne

Re: [..] Afficher une image transparente au centre de l'écran.

#9

Message par AlapOwner »

Merci je vais chercher, je met en Résolu.
Avatar du membre
Jones
Niveau 1
Niveau 1
Messages : 3
Enregistré le : jeu. 23 déc. 2010 12:12
Status : Hors ligne

Re: [R] Afficher une image transparente au centre de l'écran.

#10

Message par Jones »

Sinon j'ai cru voir un SplashScreenPNG, il faut que je retrouve ça.

Tu peut utilisé SplashImageOn pour affiché des images bitmap, GIF et jpeg.

Edit : Voila pour la transparence : http://autoitscript.fr/forum/viewtopic. ... lit=splash
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2130
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [R] Afficher une image transparente au centre de l'écran.

#11

Message par TommyDDR »

... Résolu ? Je ne pense pas non ^^'

Le post n'a pourtant pas été créé le 1er avril ! :shock:

Revoyez l'aide de "_GDIPlus_ImageLoadFromFile()", en aucun cas il n'affiche une image dans une GUI. Il charge juste en memoire une image se situant dans un fichier.

Un simple GUICtrlCreatePic() devrait emplement vous suffire.
► Afficher le texte
Cependant, la partie non transparente sera toujours cliquable et activera votre fenêtre.
Pas très pratique dans un FPS.
-> Mettez le milieu de votre image en transparent.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
AlapOwner
Niveau 1
Niveau 1
Messages : 11
Enregistré le : sam. 20 nov. 2010 17:09
Status : Hors ligne

Re: [R] Afficher une image transparente au centre de l'écran

#12

Message par AlapOwner »

Oups ! J'avais oublié ce projet !
Merci a tous mon probléme est effectivement résolu maintenant !
Répondre