Basic Univers
Enumeration
#Window
#Btn_About
EndEnumeration
FlagWin = #PB_Window_SystemMenu| #PB_Window_ScreenCentered |#PB_Window_TitleBar
If OpenWindow(#Window, 0, 0, 200, 100, "ABOUT", FlagWin)= 0 Or CreateGadgetList(WindowID(#Window))= 0
End
EndIf
ButtonGadget(#Btn_About, 25, 30, 150, 40, "About Windows")
Repeat
Event = WaitWindowEvent()
If Event = #PB_Event_Gadget
Select EventGadget()
Case #Btn_About : ShellAbout_(WindowID(#Window), "WINDOWS ABOUT REQUESTER", "Copyright " + Chr(169)+" 2006 - PB4. Tous droits réservés.", 0)
EndSelect
EndIf
Until Event = #PB_Event_CloseWindow
CloseWindow(#Window)
Procedure.l AboutRequester(Title.s, Text.s = #NULL$, Window.l = #PB_Any, Beep.l = #MB_ICONINFORMATION)
Protected About.l, WindowID.l, IconID.l, Word.w
If Not IsWindow(Window) : Window = EventWindow() : EndIf
If IsWindow(Window) : WindowID = WindowID(Window) : EndIf
MessageBeep_(Beep)
IconID = ExtractAssociatedIcon_(GetModuleHandle_(#Null), ProgramFilename(), @Word)
About = ShellAbout_(WindowID, Title, Text, IconID)
If IconID : DestroyIcon_(IconID) : EndIf
ProcedureReturn About
EndProcedure
AboutRequester("AboutRequester")