Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
lionel_om
Messages : 1500 Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :
Message
par lionel_om » mar. 12/juin/2007 18:53
Bonjour,
Y'a t'il un moyen de faire des Macros avec arguments facultatifs ?
Car je veux faire une "redéclaration" de fonction, mais via une macro (pour optimiser le temps d'exécution).
Exemple :
Code : Tout sélectionner
Procedure Multiplication_par_100(value.l = #Null)
ProcedureReturn value * 100
EndProcedure
Macro Mul100( ??? )
Multiplication_par_100( ??? )
EndMacro
Sinon on peut faire cela, mais on perd l'argument facultatif.
Code : Tout sélectionner
Macro Multiplication_par_100(value)
value * 100
EndMacro
Procedure Mul100( ??? )
ProcedureReturn Multiplication_par_100( ??? )
Endprocedure
Merci de vos conseils
Lionel
Dernière modification par
lionel_om le mer. 13/juin/2007 16:57, modifié 1 fois.
Webmestre de
Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos
codes !
minirop
Messages : 321 Inscription : mer. 02/août/2006 21:06
Message
par minirop » mar. 12/juin/2007 19:34
ceci ne marche pas ?
Code : Tout sélectionner
Macro Multiplication_par_100(value)
value * 100
EndMacro
Procedure Mul100( value = 0 )
ProcedureReturn Multiplication_par_100( value )
Endprocedure
j'ai tester çà marche
lionel_om
Messages : 1500 Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :
Message
par lionel_om » mar. 12/juin/2007 19:48
Oui ca marche, mais pour "Multiplication_par_100", on n'a pas l'argument facultatif...
Webmestre de
Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos
codes !
minirop
Messages : 321 Inscription : mer. 02/août/2006 21:06
Message
par minirop » mar. 12/juin/2007 20:41
lionel_om a écrit : Oui ca marche, mais pour "Multiplication_par_100", on n'a pas l'argument facultatif...
documentation de PB a écrit : Exemple: Macro avec paramètre par défaut
Macro BoiteDeMessageEnMajuscule(Titre, Corps = "Ah, aucun corps spécifié")
MessageRequester(Titre, UCase(Corps), 0)
EndMacro
BoiteDeMessageEnMajuscule("Salut") ; Ici la ligne sera remplacée comme ça :
; MessageRequester("Salut", UCase("Ah, aucun corps spécifié"), 0)
'est çà que tu cherches ?
lionel_om
Messages : 1500 Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :
Message
par lionel_om » mar. 12/juin/2007 22:08
minirop a écrit : C'est çà que tu cherches ?
Il me semblais l'avoir déjà testé !
Je ne devais pas avoir les yeux en face des trous ou alors j'ai pas trouvé ca dans la doc !!!
Merci bien
Lio
Webmestre de
Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos
codes !
brossden
Messages : 833 Inscription : lun. 26/janv./2004 14:37
Message
par brossden » mer. 13/juin/2007 10:12
Le même principe fonctionne avec les procedures !
Code : Tout sélectionner
Procedure Info(Mess.s="Plus de message")
MessageRequester("Info",Mess)
EndProcedure
Info("C'est un test")
Info()
Denis
Bonne Jounée à tous
lionel_om
Messages : 1500 Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :
Message
par lionel_om » mer. 13/juin/2007 16:58
Oui, je sais...
Mais je ne devais aps être bien en forme à ce moement.
Merci de votre aide !!!
Lio
Webmestre de
Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos
codes !