Ouverture de CD qui ne fonctionne pas
Publié : dim. 06/janv./2008 13:40
ça existe deja mais je voulais me faire mon porte gobelet.
Je ne pige pas pourquoi ça ne fonctionne pas.
(j'utilise daemon tool, createur de lecteur viruel, c'est peut etre ça ?)
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
;
;}