|
| auteur : Progi1984 |
Ce code fonctionne sous Windows 2000 et supérieur. Il utilise l'API Windows.
Global Alpha.l = 50
If OpenWindow(0, 100, 200, 200, 200, "Transparence fenêtre")
If CreateGadgetList(WindowID(0))
ButtonGadget(0, 0, 0, 100, 100, "Appliquer la transparence à la fenêtre",#PB_Button_MultiLine)
ButtonGadget(1, 100, 100, 100, 100, "Changer la valeur de la transparence",#PB_Button_MultiLine)
EndIf
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_CloseWindow
Quit = 1
EndIf
If EventID = #PB_Event_Gadget
GadgetID = EventGadget()
If GadgetID = 0
SetWindowLong_(WindowID(0), #GWL_EXSTYLE, #WS_EX_LAYERED)
SetLayeredWindowAttributes_(WindowID(0), 0, 255 * Alpha / 100, #LWA_ALPHA)
EndIf
If GadgetID = 1
Alpha = Val(InputRequester("Transparence", "Valeur en % (entre 0 et 100)", "50"))
EndIf
EndIf
Until Quit = 1
EndIf
|
|
|
| auteur : Progi1984 |
La technique utilisée est l'utilisation d'une fonction fournie par PureBasic StickyWindow(). Le premier argument est l'identifiant de la fenêtre. Le second active ou désactive la mise au premier plan.
If OpenWindow(0, 100, 200, 200, 200, "Fenêtre au premier plan", #PB_Window_SystemMenu)
If CreateGadgetList(WindowID(0))
ButtonGadget(0, 0, 0, 100, 100, "Activer")
ButtonGadget(1, 100, 100, 100, 100, "Désactiver")
EndIf
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_CloseWindow
Quit = 1
ElseIf EventID = #PB_Event_Gadget
GadgetID = EventGadget()
If GadgetID = 0
StickyWindow(0, #True)
SetWindowTitle(0, "Premier plan activé")
ElseIf GadgetID = 1
StickyWindow(0, #False)
SetWindowTitle(0, "Premier plan désactivé")
EndIf
EndIf
Until Quit = 1
EndIf
|
|
|
| auteur : Progi1984 |
Dans ce cas, il faut utiliser l'API Windows.
Utilisez la touche [Echap] pour quitter le programme.
If OpenWindow(0, 100, 200, 300, 200, "Désactive le bouton de fermeture",#PB_Window_SystemMenu)
hSysMenu = GetSystemMenu_(WindowID(0), #False)
RemoveMenu_(hSysMenu, #SC_CLOSE, #MF_BYCOMMAND)
DrawMenuBar_(WindowID(0))
Repeat
EventID = WaitWindowEvent()
If GetAsyncKeyState_(#VK_ESCAPE)
Quit = 1
EndIf
Until Quit = 1
EndIf
|
|
Consultez les autres F.A.Q's


Les sources présentées sur cette page sont libres de droits
et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation
constitue une œuvre intellectuelle protégée par les droits d'auteur.
Copyright © 2008 Developpez Developpez LLC.
Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne
peut être faite de ce site ni de l'ensemble de son contenu : textes, documents
et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez
selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.