Aller au contenu

Messages recommandés

Posté(e)

Salut,

Je voulais créer un menu contextuel pour l'un de mes commande lisp perso.

Je suis aller dans personnaliser - menu contextuel - etc.... (v2009)

Et j'ai commancé à créer mon propre menu...

Comme je veux que ce menu apparaisse lors de la commande en cours, je dois mettre en alias "CMCOMMAND"....

Mais cela m'est refusé, car l'alias CMCOMMAND est déjà attribué au menu "menu de la commande"....

J'ai beau chercher dans l'aide, je n'arrive pas à trouvé le moyen de lancer mon menu contextuel perso, si ma commande perso est active.....

 

Je m'étais dit qu'en lisp y'avait peut-être le moyen de forcer ça, mais je n'ai pas trouvé non plus....

 

Vous aurez compris que je ne veux pas changer le menu contextuel par défaut "menu de la commande" , je veux en créer un vraiment perso, ou je mettrais exclusivement ce que je veux, sans enlever le menu contextuel par défaut lors de commandes "normale" d'Acad...

 

merci d'avance pour vos suggestions.

 

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

... laissez tombr, j'ai mal regardé l'aide...

alais : COMMAND_nom_commande

 

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

grrrrrrrrrrrrrr !!!

J'y arrive pô !!!!!!

 

J'ai créés mon menu perso.

dedans j'ai mis ça comme Alias : COMMAND_TESTMENU

.... j'ai fait un lisp test trés compliqué :

(defun c:testmenu ()
 (setq v (getvar "SHORTCUTMENU"))
 (setvar "SHORTCUTMENU" 4)
 (setq p (getpoint "\n choix :"))
 (setvar "SHORTCUTMENU" v)
 (princ)
 )

 

... le problème est que ça m'affiche bien mon menu.... mais avec le reste du menu contextuel standard d'Acad !!!!!

http://images.imagup.com/04/1217520685_2008-07-31_165115.jpg

 

Comment on peux faire ???!!!

Suprimer le menucontextuel d'Acad ayant le CMCOMMAND ?....

merci...

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

Bred,

 

Je n'ai pas exactement compris, ce que tu veux faire.

Quand j'ai besoin d'un menu contextuel personnalisé en lisp je me sert de la fonctionnalité d' (initget) et de la syntaxe des fonction (getxxx).

 

Par exemple, rapidement, avec ton exemple je ferais ceci:

(defun c:testmenu ()
(setq v (getvar "SHORTCUTMENU"))
(setvar "SHORTCUTMENU" 11)
(initget 1 "Dernier Entité _Last Entitie")
(setq p (getpoint "\nChoix ou [Dernier/Entité] :"))
(cond
((eq p "Last") (setq p (getvar "Lastpoint")))
((eq p "Entitie") (setq p (cdr (assoc 10 (entget (car (entsel "\nChoix d'une entité: ")))))))
)
(command "_.line" p
	(while (not (zerop (getvar "cmdactive")))
		(command pause)
	)
)
(setvar "SHORTCUTMENU" v)
(princ)
)

 

L'important et la déclaration des mot-clé dans (initget) et comment ceux-ci apparaissent dans les fonctions (getxxx) [mot-clé1/mot-clé2/etc...]

 

En faisant un click-droit au moment du message Choix ou [Dernier/Entité] : tu aura les options dans le menu contextuel.

 

Tu peux voir un de mes anciens post ou j'avais expliqué ceci.

 

Mais c'est peut être pas cela que tu veux réaliser :exclam:

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

Posté(e)

Merci !..C'est ça.... sauf que je veux enlever le reste des propositions du menu contextuel !

(je ne veux pas "Entrer, Annuler, Remplacer Accro, Paoramique, etc... je ne veux QUE "Dernier" et "Entité" pour reprendre ton exemple !)

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

Je ne crois pas qu'il soit possible de "shunter" ce menu contextuel minimaliste par défaut du mode commande accessible a partir du bit 4 de shortcutmenu.

 

Après si c'est faisable cela doit être vraiment compliqué :casstet: Il faudrait carrément implanter la gestion de celui-ci par un langage évolué avec risque de conflit avec celui existant. (Heu, là je ne saurais pas du tout faire !)

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

  • 3 semaines après...
Posté(e)

Salut,

 

bred: ton menu marche dans un lisp? (quand un lisp tourne), car moi j'aimerai ajouter au menu contextuel du clic droit dans la fenêtre de dessin des liens vers des fonctions lisp.

Mais je patauge comme laure en ce moment. :(

 

Mon but, avoir une utilisation plus convivial, plutot que de clique sur un bouton ou tapper un commande, se serai de faire un clic droit sur un objet, et de donner la possibilité de lancer

ces commandes à partir du clic droit.

Tous pour lisp, Lisp pour tous!

Avec Revit, cela ne vas trop vite...

Posté(e)

Salut,

désolé de répondre tardivement, mais je n'ai internet que très épisodiquement en ce moment (déplacement.. de vacances....)

bred: ton menu marche dans un lisp? (quand un lisp tourne)

Pour cela tu devrais prendre l'exemple de bonuscad, grâce à l'initget.

 

Mon but, avoir une utilisation plus convivial, plutot que de clique sur un bouton ou tapper un commande, se serai de faire un clic droit sur un objet, et de donner la possibilité de lancer

ces commandes à partir du clic droit.

Ce n'est pas la même chose si un lisp n'est pas en cours de déroulement...

Pour cela tu peux créer des boutons dans le menus contextuel, dans la "personnalisation".

Les menus contextuels afficher dépende de l'action qui est en train de se dérouler....

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

  • 5 mois aprè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 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é