Squelette de Programme

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Squelette de Programme

Message par Droopy »

J'ai fais ça pour aider les débutants ( comme moi ) à concevoir leur interface graphique / gestion des evenements

Code : Tout sélectionner

Enumeration ;- Menu
  #MenuOpen
  #MenuSave
  #MenuQuit
  #MenuHelp
  #MenuAbout
EndEnumeration

Enumeration ;- Gadget 
  #Image1
  #Button1
EndEnumeration

Procedure ShowInformation(Text1.s,Text2.s) ; Show information in the StatusBar
  StatusBarText(0,0,Text1)
  StatusBarText(0,1,Text2)
EndProcedure

OpenWindow(0, 0, 0, 220, 120, #PB_Window_SystemMenu|#PB_Window_ScreenCentered , "Event Example")

;{/ Create the Menu
CreateMenu(0, WindowID())    
MenuTitle("File")
MenuItem(#MenuOpen, "Open")
MenuItem(#MenuSave, "Save")
MenuBar()
MenuItem(#MenuQuit, "Quit")
MenuTitle("Help")
MenuItem(#MenuHelp,"Help")
MenuBar()
MenuItem(#MenuAbout,"About")
;}

;{/ Create the Gadgets
CreateGadgetList(WindowID())
ImageGadget(#Image1, 10, 10, 200, 20, 0,#PB_Image_Border)
ButtonGadget(#Button1, 10, 40, 200, 20, "Button")
;}

;{/ Create the StatusBar
CreateStatusBar(0,WindowID())
AddStatusBarField(110)
AddStatusBarField(110)
;}

;{/ Manage Events
Repeat
  Select WaitWindowEvent()
    
    Case #PB_EventMenu ;- MENU
      Select EventMenuID()  ; To see which menu has been selected
        Case #MenuOpen
          ShowInformation("Menu","Open")
        Case #MenuSave
          ShowInformation("Menu","Save")
        Case #MenuQuit
          ShowInformation("Menu","Quit")
        Case #MenuHelp
          ShowInformation("Menu","Help")
        Case #MenuAbout
          ShowInformation("Menu","About")
      EndSelect
      
    Case #PB_Event_Gadget ;- GADGETS
      Select EventGadgetID()
        
        Case #Image1
          Select EventType() ;- Type of Events
            Case #PB_EventType_LeftClick 
              ShowInformation("Gadget Image 1","Left Click")
            Case #PB_EventType_RightClick
              ShowInformation("Gadget Image 1","Right Click")
          EndSelect
          
        Case #Button1
          ShowInformation("Gadget Button 1","No matter")
      EndSelect
      
    Case #WM_CLOSE ;- CLOSE WINDOWS
      ShowInformation("Close","Windows")
      Delay(1000)
      End
      
  EndSelect
ForEver
;}
yeman13
Messages : 2
Inscription : mer. 17/août/2005 20:44

1000 merci

Message par yeman13 »

Salut,

Je débute en Purebasic.
Je savais pas trop par où commencer.

Merci d'avoir penser aux débutants comme moi.

A+ et bravo encore.
David
f1roe
Messages : 34
Inscription : dim. 04/sept./2005 22:10
Localisation : Lyon 3ème

Message par f1roe »

Bonjour,

Je débute également et depuis deux jours en période d'évaluation du soft. Que du bon pour le moment mais il est difficile de se lancer avec la documentation existante. Ce squelette de programme me permet de débuter sans trops de problème.

Au passage la compilation de cet exemple n'est pas possible sur ma version 3.94 (démo) j'ai donc remplacé en ligne 79 "#WM_CLOSE" par "#PB_Event_CloseWindow" et cela fonctionne maintenant.

Cordialement

Sébastien
Répondre