Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
MLD
Messages : 1124 Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne
Message
par MLD » ven. 17/déc./2010 9:55
Ce matin je dois avoir les neuronnes qui patinent
Mais quelle serait la fonction qui permet de retrouver le nom de la constante par sont numéro
Code : Tout sélectionner
Enumeration
#Toto = 1
#Mulo = 2
#Velo = 3
EndEnumeration
Debug ???? ;(fonction pour savoir que 2 = Mulo)
End
Cela parait dérisoire dans un petit programme, mais dans un programme de 10 000 lignes cela peut être utile.
boddhi
Messages : 604 Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''
Message
par boddhi » ven. 17/déc./2010 10:27
Salut.
A ma connaissance, une telle fonction PB n'existe pas et, je pense, ne saurait exister, en tout cas sous une forme simple, dans la mesure où plusieurs constantes peuvent avoir la même valeur.
MLD
Messages : 1124 Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne
Message
par MLD » ven. 17/déc./2010 10:33
Salut boddhi
Si dans l'Enumération plusieurs constantes ont la même valeur, c'est une erreur.
boddhi
Messages : 604 Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''
Message
par boddhi » ven. 17/déc./2010 11:14
Non, pas du tout !
Code : Tout sélectionner
Enumeration
#AAA
#BBB
#CCC
EndEnumeration
Enumeration
#DDD
#EEE
#FFF
EndEnumeration
ou bien encore, rien ne t'empêche d'écrire :
Code : Tout sélectionner
Enumeration
#AAA
#BBB
#CCC
#DDD
#EEE
#FFF=2
#...
EndEnumeration
auxquels cas #CCC et #FFF ont bien la même valeur, 2 en l'occurence.
Donc comment une fonction "simple" pourrait te retourner #CCC et #FFF en même temps ?
MLD
Messages : 1124 Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne
Message
par MLD » ven. 17/déc./2010 11:33
@ boddhi
Bien entendu tu peux écrire un programme comme tes exemples. Mais je te souhaite bon courage pour retrouver tes petits là dedans.
N'oublie pas que la plupart du temps les constantes sont des noms de gadgets, et ta façon de faire est le meilleur moyen d'avoir deux gadgets avec le même numéro, et aprés bonjour le souc
boddhi
Messages : 604 Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''
Message
par boddhi » ven. 17/déc./2010 11:45
Tu as raison !
Mais pour des gadgets, je ne procède pas comme cela...
J'utilise #PB_Compiler_EnumerationValue en découpant chaque groupe de constantes liés à une fenêtre, ce qui donne cela :
Code : Tout sélectionner
Enumeration ; Gadgets fenêtre 0
#GAD_FEN0DESCRIPTION_DESCRIPTIONGADGET1
#GAD_FEN0DESCRIPTION_DESCRIPTIONGADGET2
#GAD_FEN0DESCRIPTION_DESCRIPTIONGADGET3
EndEnumeration
Enumeration #PB_Compiler_EnumerationValue ; Gadgets fenêtre 2
#GAD_FEN1DESCRIPTION_DESCRIPTIONGADGET1
#GAD_FEN1DESCRIPTION_DESCRIPTIONGADGET2
#GAD_FEN1DESCRIPTION_DESCRIPTIONGADGET3
EndEnumeration
Comme cela j'évite tout risque de déclaration identique
Backup
Messages : 14526 Inscription : lun. 26/avr./2004 0:40
Message
par Backup » ven. 17/déc./2010 14:11
pour ma part, en general, je n'utilise qu'un seul enumeration-endenumeration
pour tout le code !!
apres , je peut eventuellement faire des reperes
Code : Tout sélectionner
enumeration
; fenetre
#win_1
#win_2
;gadgets
#toto
#titi
#tutu
; fichiers
#file1
#file2
#file
endenumeration
de cette façon, aucuns problemes !
MLD
Messages : 1124 Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne
Message
par MLD » ven. 17/déc./2010 14:30
Yes Dobro