Je ne pige pas pourquoi ça ne fonctionne pas.
(j'utilise daemon tool, createur de lecteur viruel, c'est peut etre ça ?)
Code : Tout sélectionner
;{- Enumerations / DataSections
; Par Ar-S fait en 3sec deux dixiemes
Enumeration
#ARS
#BT_GO
#Image_ButtonImage_0
EndEnumeration
Global BT_GO_Tooltip
;}
;{ Included Images
DataSection ;>
;mon image en data est tros grosse pour la poster
EndDataSection ;<
;}
;{ Image Plugins
UsePNGImageDecoder()
;}
; Create tooltip
Procedure GadgetBalloonToolTip(WindowNumber.l, GadgetNumber.l, Text.s)
Protected Tooltip.l, Balloon.TOOLINFO
Tooltip = CreateWindowEx_(0, "ToolTips_Class32", "", #WS_POPUP | #TTS_NOPREFIX | #TTS_BALLOON, 0, 0, 0, 0, WindowID(WindowNumber), 0, GetModuleHandle_(0), 0)
SendMessage_(Tooltip, #TTM_SETTIPTEXTCOLOR, GetSysColor_(#COLOR_INFOTEXT), 0)
SendMessage_(Tooltip, #TTM_SETTIPBKCOLOR, GetSysColor_(#COLOR_INFOBK), 0)
SendMessage_(Tooltip, #TTM_SETMAXTIPWIDTH, 0, 180)
Balloon\cbSize = SizeOf(TOOLINFO)
Balloon\uFlags = #TTF_IDISHWND | #TTF_SUBCLASS
Balloon\hwnd = GadgetID(GadgetNumber)
Balloon\uId = GadgetID(GadgetNumber)
Balloon\lpszText = @Text
SendMessage_(Tooltip, #TTM_ADDTOOL, 0, @Balloon)
ProcedureReturn Tooltip
EndProcedure
; Change tooltip text
Procedure ChangeGadgetBalloonToolTip(Tooltip.l, GadgetNumber.l, Text.s)
Protected Balloon.TOOLINFO
Balloon\cbSize = SizeOf(TOOLINFO)
Balloon\uFlags = #TTF_IDISHWND | #TTF_SUBCLASS
Balloon\hwnd = GadgetID(GadgetNumber)
Balloon\uId = GadgetID(GadgetNumber)
Balloon\lpszText = @Text
SendMessage_(Tooltip, #TTM_ADDTOOL, 0, @Balloon)
EndProcedure
; Free tooltip
Procedure FreeBalloonTooltip(Tooltip.l)
DestroyWindow_(Tooltip.l)
EndProcedure
;
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
;}
Procedure OpenWindow_ARS()
If OpenWindow(#ARS, 441, 420, 227, 281, "Porte Gobelet par Ar-S", #PB_Window_SystemMenu|#PB_Window_TitleBar|#PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(#ARS))
ButtonImageGadget(#BT_GO, 0, 0, 230, 285, CatchImage(#Image_ButtonImage_0, ?Image_ButtonImage_0))
BT_GO_Tooltip = GadgetBalloonToolTip(#ARS, #BT_GO, "Cliquer pour creer votre porte gobelet")
EndIf
EndIf
EndProcedure
Procedure Gobelet()
EndProcedure
OpenWindow_ARS()
;{- Event loop
Repeat
Event = WaitWindowEvent()
Select Event
; ///////////////////
Case #PB_Event_Gadget
EventGadget = EventGadget()
EventType = EventType()
If EventGadget = #BT_GO
If EjectAudioCD(0)
etat=0
Else
etat=1
EndIf
If etat=0
EjectAudioCD(1)
MessageRequester("bravo","Votre porte gobelet est créé")
etat=1
Else
EjectAudioCD(0)
MessageRequester("Fermeture","Votre porte gobelet est rangé")
etat=0
EndIf
EndIf
; ////////////////////////
Case #PB_Event_CloseWindow
EventWindow = EventWindow()
If EventWindow = #ARS
CloseWindow(#ARS)
Break
EndIf
EndSelect
ForEver
;
;}