DenisHen Posté(e) le 15 juin 2015 Posté(e) le 15 juin 2015 Bonjour à tous, Voilà, j'ai fais quelques petits bout de LiSP et je me pose toujours une question, Pourquoi AutoCAD répète-t-il toujours le dernier princ ? exemple, dans cette macro :(defun c:DHConfEtiqPTRL (/) (if (or (= (vlax-ldata-get "DenisH" "EtiqPTRL_XY") nil) (= (vlax-ldata-get "DenisH" "EtiqPTRL_XY") "") ) ;_ Fin de or (vlax-ldata-put "DenisH" "EtiqPTRL_XY" "O") ) ;_ Fin de if (setq EtiqXY (vlax-ldata-get "DenisH" "EtiqPTRL_XY")) ; (if (or (= (vlax-ldata-get "DenisH" "EtiqPTRL_Z") nil) (= (vlax-ldata-get "DenisH" "EtiqPTRL_Z") "") ) ;_ Fin de or (vlax-ldata-put "DenisH" "EtiqPTRL_Z" "O") ) ;_ Fin de if (setq EtiqZ (vlax-ldata-get "DenisH" "EtiqPTRL_Z")) ; (initget 1 "Oui Non") (setq EtiqXY (getkword "\nÉcrire l'X et l'Y [Oui/Non] ? ")) (initget 1 "Oui Non") (setq EtiqZ (getkword "\nÉcrire le Z [Oui/Non] ? ")) (vlax-ldata-put "DenisH" "EtiqPTRL_XY" (strcase EtiqXY)) (vlax-ldata-put "DenisH" "EtiqPTRL_Z" (strcase EtiqZ)) (princ (strcat "\n\nConfiguration actuelle : Étiquette XY = " (vlax-ldata-get "DenisH" "EtiqPTRL_XY") " Étiquette Z = " (vlax-ldata-get "DenisH" "EtiqPTRL_Z") ) ;_ Fin de strcat ) ;_ Fin de princ ) ;_ Fin:defun AotuCAD me répète la dernière ligne :Commande: DHConfEtiqPTRL Écrire l'X et l'Y [Oui/Non] ? n Écrire le Z [Oui/Non] ? o Configuration actuelle : Étiquette XY = NON Étiquette Z = OUI"\n\nConfiguration actuelle : Étiquette XY = NON Étiquette Z = OUI" Commande: Je ne saisi pas trop... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
VDH-Bruno Posté(e) le 15 juin 2015 Posté(e) le 15 juin 2015 Bonjour, La deuxième invite est la valeur de retour de ta fonction lisp, le préfixe c: permet d'appeler ta fonction lisp sur la ligne de commande comme une commande AutoCAD, mais cela reste une expression Lisp qui retourne toujours la dernière expression évalué. Pour évité cette "impression" d'écho sur ta ligne de commande en sortie de programme insère un (princ) qui te renverra un blanc. A+ 1 Apprendre => Prendre => Rendre
DenisHen Posté(e) le 15 juin 2015 Auteur Posté(e) le 15 juin 2015 Bonjour, Mille mercis Bruno, Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant