Partagez votre expérience de PureBasic avec les autres utilisateurs.
Le Soldat Inconnu
Messages : 4312 Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :
Message
par Le Soldat Inconnu » jeu. 29/janv./2004 10:05
ce code ne marche que avec windows XP
Code : Tout sélectionner
Procedure SetWinTransparency (WinHandle.l, Transparency_Level.l)
SetWindowLong_(WinHandle, #GWL_EXSTYLE, $00080000) ; #WS_EX_LAYERED = $00080000
SetLayeredWindowAttributes_(WinHandle, 0, Transparency_Level, 2) ;
EndProcedure
hWnd = OpenWindow(0, 0, 0, 400, 360, #PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_Invisible, "")
SetWinTransparency(WindowID(), 0)
HideWindow(0, 0)
For a = 1 To 255
SetWinTransparency(WindowID(), a) : While WindowEvent() : Wend
Next
For a = 1 To 255
SetWinTransparency(WindowID(), 255 - a) : While WindowEvent() : Wend
Next
Je ne me rapelle plus qui me l'avait passé mais encore un grand merci à cette personne
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64) ]
julien
Messages : 846 Inscription : ven. 30/janv./2004 15:06
Contact :
Message
par julien » ven. 30/janv./2004 15:16
Salut,
C'est moi qui t'avais filé le code sur l'ancien forum,
pour info le code marche sous Windows 2000 et sous XP
Sous 98 l'exe refuse de se lancer avec un message d'erreur : User32.dll...
Sous Nt... je ne sais pas... pour le moment je cherche un moyen pour que l'exe qui contient cette fonction puisse être lancé sous 98 quand même, mais j'ai toujours pas trouvé...!
Oliv
Messages : 2117 Inscription : mer. 21/janv./2004 18:39
Message
par Oliv » ven. 30/janv./2004 16:57
C'est "simple" en théorie, il suffit d'extraire de user32.dll SetLayeredWindowAttributes et puis c'est tout, mais pour ça...........en plus ce ne doit pas être légal. Je vais reposter mon code de transparence mais elle est complètement différente et moins jolie seulement elle est compatible tous windows
Fred
Site Admin
Messages : 2808 Inscription : mer. 21/janv./2004 11:03
Message
par Fred » ven. 30/janv./2004 18:06
Pour executer ce code sur Win98 aussi (meme si ca ne fera rien) il suffit d'utiliser OpenLibrary() pour charger la fonction dynamiquement.
Le Soldat Inconnu
Messages : 4312 Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :
Message
par Le Soldat Inconnu » ven. 30/janv./2004 19:21
OUi, c'est ce que je comptait faire pour l'utiliser sur toute les plateformes
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64) ]