bonsoir
qui peux m'expliquer la commande callback svp
merci
qui peux m'expliquer la commande callback svp
Code : Tout sélectionner
....
Pour programmeurs expérimentés seulement. Cette fonction est seulement disponible sous Microsoft Windows. Les évènement classiques devrait toujours être gérés avec les commandes WaitWindowEvent() ou WindowEvent(). Cette commande permet d'accéder directement à la callback utilisé par Windows pour gérér les évènements recus par l'application...
-
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
en fait, la commande WindowEvent ou WaitWindowEvent ne retourne pas tous les évènements mais seulement quelques un
tandis que la callback permet de voir tous les évènements.
c'est particulièrement utile dès que l'on touche à la personnalisation de l'apparence de gadget par exemple. car les évènements qui disent que l'on dessine un gadget ne sont pas donné avec WindowEvent ou WaitWindowEvent
tandis que la callback permet de voir tous les évènements.
c'est particulièrement utile dès que l'on touche à la personnalisation de l'apparence de gadget par exemple. car les évènements qui disent que l'on dessine un gadget ne sont pas donné avec WindowEvent ou WaitWindowEvent
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
j'ai compris pour mettre de la couleur
je bosse sur un petit jeu
voici un bout de mon code
ne regarder pas trop c'est mal disposer
mais je me comprend moi ...
je bosse sur un petit jeu
voici un bout de mon code
ne regarder pas trop c'est mal disposer
mais je me comprend moi ...
Code : Tout sélectionner
Procedure.l WindowCallBack(WindowID.l, Message.l, wParam.l, lParam.l)
ReturnValue.l = #PB_ProcessPureBasicEvents
;
ReturnValue = PureCOLOR_CallBack(WindowID, Message, wParam, lParam, ReturnValue)
;
ProcedureReturn ReturnValue
EndProcedure
Enumeration
#win_0
EndEnumeration
Enumeration
#nom_joueur
#string_joueur
#bouton_valider
#bouton_annuler
EndEnumeration
Global FontID1
FontID1 = LoadFont(1, "Arial", 12, #PB_Font_Bold)
Global fontID2
fontID2 = LoadFont(2,"arial",11,#pb_font_bold)
Procedure nouveau()
If OpenWindow(#win_0,0,0,300,100,#PB_Window_SystemMenu|#PB_Window_ScreenCentered| ,"Nouveau jeu")
SetWindowCallback(@WindowCallBack())
PureCOLOR_SetWindowColor(#win_1,RGB(9,194,247))
If CreateGadgetList(WindowID())
TextGadget(#nom_joueur, 80, 5,130,20,"Nom du joueur :",#PB_Text_Center)
PureCOLOR_SetGadgetColor(#nom_joueur, RGB(249,37,55),RGB(9,194,247))
SetGadgetFont(#nom_joueur,fontid1)
StringGadget(#string_joueur,25,30,250,25,"")
SetGadgetFont(#string_joueur,fontID2)
ButtonGadget(#bouton_valider,25,65,90,30,"Valider")
SetGadgetFont(#bouton_valider,fontID1)
PureCOLOR_SetButtonColor(#bouton_valider, RGB(249,37,55),RGB(236,233,216))
ButtonGadget(#bouton_annuler,185,65,90,30,"Annuler")
SetGadgetFont(#bouton_annuler,fontID1)
PureCOLOR_SetButtonColor(#bouton_annuler, RGB(249,37,55),RGB(236,233,216))
EndIf
EndIf
EndProcedure
nouveau()
Repeat
event=WaitWindowEvent()
Select event
Case #pb_eventclosewindow
ferme_0=1
EndSelect
Until ferme_0=1
End