Page 1 sur 1

Que veux dire ces 2 commande #PB_Any et #PB_Compiler_Home

Publié : ven. 01/août/2014 14:43
par Lemaquis
Bonjour

Que veux dire ces commandes : #PB_Any et #PB_Compiler_Home

j'ai regardé dans la doc mais j'ai pas trouvé leur explication

Merci pour votre aide

Re: Que veux dire ces 2 commande #PB_Any et #PB_Compiler_H

Publié : ven. 01/août/2014 16:25
par falsam
C'est pourtant pas le 1er avril :mrgreen:

:idea: Chaque fenêtre, gadget, image, sprite, entité 3D .... possède un identifiant géré par toi même ou bien le systéme d'exploitation.

■ Exemple d'un identifiant géré par soi même

Code : Tout sélectionner

OpenWindow(0, 0, 0, 800, 600, "un titre", #PB_Window_SystemMenu)

Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
ou

Code : Tout sélectionner

Enumeration
  #MaFenetre
EndEnumeration

OpenWindow(#MaFenetre, 0, 0, 800, 600, "un titre", #PB_Window_SystemMenu)

Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
■ Exemple d'un identifiant géré par le systéme d'exploitation

Code : Tout sélectionner

OpenWindow(#PB_Any, 0, 0, 800, 600, "un titre", #PB_Window_SystemMenu)

Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
Dans ce cas on utilise #PB_Any (Any : N'importe lequel en anglais)


:idea: Deuxième partie de la question :
#PB_Compiler_Home te permet d'obtenir le dossier d'installation de Pure Basic

Code : Tout sélectionner

Debug #PB_Compiler_Home
Exemple d'une image que tu récupéres du dossier d'installation de Pure Basic

Code : Tout sélectionner

Enumeration
  #MaFenetre
  #Image
EndEnumeration

OpenWindow(#MaFenetre, 0, 0, 800, 600, "un titre", #PB_Window_SystemMenu)

;On charge une image qui se trouve dans les exemples 
;se trouvant dans le dossier d'installation de Pure Basic
Image = LoadImage(#PB_Any, #PB_Compiler_Home+"Examples\Sources\Data\Geebee2.bmp")

;Affichage de l'image
ImageGadget(#Image, 10, 10, 0, 0, ImageID(Image))

;Ici l'identifiant #Image aurait pu être remplacer par #pb_any, 
;car l'imagegadget ne sera pas modifié


Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow

Re: Que veux dire ces 2 commande #PB_Any et #PB_Compiler_H

Publié : ven. 01/août/2014 16:29
par djes
D'abord, ce ne sont pas des commandes, mais des constantes, d'où le dièse ("#") qui les précède.

#PB_Compiler_Home : regarde dans les directives du compilateur ( http://purebasic.developpez.com/documen ... tives.html)
-> Chemin complet du répertoire PureBasic, utile pour localiser des fichiers inclus. Autrement dit quand tu mets cette constante dans ton code, le compilateur la remplace par le chemin complet du dossier PureBasic, par exemple "C:\Program Files\PureBasic\"

#PB_Any : là, je trouve que tu abuses un peu, parce que cette constante est utilisée dans TOUS les exemples ou presque de la documentation, et donc dans une quantité incroyable d'endroits. Faut pas pousser non plus... Voir plus précisément dans "les objets Purebasic", section II.

Re: Que veux dire ces 2 commande #PB_Any et #PB_Compiler_H

Publié : ven. 01/août/2014 16:34
par Lemaquis
merci de vos réponses