Que veux dire ces 2 commande #PB_Any et #PB_Compiler_Home

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Lemaquis
Messages : 271
Inscription : mer. 25/déc./2013 7:34
Localisation : la corse

Que veux dire ces 2 commande #PB_Any et #PB_Compiler_Home

Message 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
LeMaquis
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

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

Message 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
Dernière modification par falsam le ven. 01/août/2014 16:39, modifié 2 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

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

Message 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.
Lemaquis
Messages : 271
Inscription : mer. 25/déc./2013 7:34
Localisation : la corse

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

Message par Lemaquis »

merci de vos réponses
LeMaquis
Répondre