Aller au contenu

Selection d\'objet ou menu ??


dr.loveless

Messages recommandés

Salut,

 

je cherche le code me permettant d'avoir le choix dans la ligne de commande entre la selection d'un objet ou le choix d'un texte ( me servant de menu). J'ai l'habitude (certainement un tords) de me servior de la fonction INITGET, mais cell-ci ne fonctione pas dans ce cas, comment puis-je m'y prendre??

 

(initget " Configuration Decalage Justification ")

(setq p1 (car(entsel "\nChoisissez la cloison à moduler ou [Configurer/Justification/Decalage] : ")))

 

Merci d'avance

Le DOC

Lien vers le commentaire
Partager sur d’autres sites

Salut Le DOC,

 

Essaie de monter ton code comme suit:

 

NB: J'ai changé l'option "Decalage" par "Ecart" car l'opion Decalage (Je ne sais pourquoi posait problème, je devais taper decalage en entier sur la ligne de commande pour que ça fonctionne) :casstet:

 

(initget " Configuration Justification Ecart")

(while (eq (type (setq p1 (entsel "\nChoisissez la cloison à moduler ou [Configuration/Justification/Ecart] : "))) 'STR)

(cond

((eq p1 "Configuration")

(princ p1)

)

((eq p1 "Justification")

(princ p1)

)

((eq p1 "Ecart")

(princ p1)

)

)

(initget " Configuration Justification Ecart")

)

(if (and (listp p1) (not (null p1))) (princ (setq p1 (car p1))) (princ "\nSélection vide."))

 

Bonne continuation ;)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

Je vais reprendre la réponse de bonuscad qui dans le fond est bonne mais peut-être pas tout à fait dans la forme pour le pb de doc.

En effet je pense que doc attend un petit prog restituant soit:

- une chaine de caractère

- une entité

donc voici une version un peu plus comprimée de celle de bonuscad:

 

 

 (defun saisie_obj ()
..(initget " Configurer decaLage Justification ")
..(setq v_obj (entsel "\nChoisissez la cloison à moduler ou[Configurer/Justification/ decaLage] : "))
..(cond
.....((eq (type v_obj) 'str) v_obj)
.....((null v_obj) "")
.....('t (car v_obj))
..)
) 

 

Il suffit alors d'intégrer dans le prog principal l'ordre suivant:

(setq resultat (saisie_obj))

et de faire les tests éventuels sur résultat.

 

Nota: Pour Décalage : c'était normal que ca ne marche pas D comme dernier ...

 

Formateur

ATC Autocad - Mechanical - Inventor - Electrical

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir

 

Il est possible que le "D" en réponse à un "Choix des Objets"

soit interprété par AutoCad comme "dernier",

il y a confusion, et les machines supportent mal les confusions.

c'est une idée, pas quelque chose d'avéré.

amicalement

 

Lien vers le commentaire
Partager sur d’autres sites

Voilà Labletech en chair et en os ou presque.

 

Bienvenu au trombinoscope, toi et ta moustache (on attend la trombe du doc, pour comprendre enfin pourquoi il est sans amour !) !

 

Et merci à tous pour ces réponses, car j'avais à peu près la même question et ne l'avais pas encore posé (je dois être trop timide :red: )

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Lien vers le commentaire
Partager sur d’autres sites

Tant qu'on y est à s'amuser sur une telle fonction en voilà une un peu plus générique que la précédente qui permet la saisie d'entité ou de chaine avec des dialogues quelconques du moment qu'on le paramétrise dans l'appel de

 

(saisie_obj (list "Param1" "parAm2" "paRam3" "paraM4") "Saisir ce que tu veux")

 

vous pouvez télécharger cette fonction sur mon site à:

 

http://www.infographie-formation.fr/eformation.htm

 

rubrique "Download"

 

Formateur

ATC Autocad - Mechanical - Inventor - Electrical

Lien vers le commentaire
Partager sur d’autres sites

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité