Charger automatiquement des menus partiels au démarrage (AutoCAD R13)


Quand vous chargez un menu partiel dans une session d' AutoCAD R13, il ne réapparait pas à la session suivante. Pour contourner ce problème, il faut utiliser AutoLISP.

Rajoutez les lignes suivantes à votre fichier acadr13.lsp:

(defun NomDeVotreFichierMenu_DEM ( / AncCmd)
  (setq AncCmd (getvar "CMDECHO"))
  (setvar "CMDECHO" 0)
  (if (not NomDeVotreFichierMenu) 
    (progn      
      (command "_MENULOAD" (findfile "NomDeVotreFichierMenu.mnu"))
    )
  )
  (setvar "CMDECHO" AncCmd)
  (princ)
)

(setq S::STARTUP (append S::STARTUP NomDeVotreFichierMenu_DEM))

En remplacant, bien évidemment NomDeVotreFichierMenu par le nom de votre fichier menu (sans chemin ni extension .mnu).

Ensuite, dans le fichier .mnl qui accompagne votre menu, ajoutez les lignes suivantes:

(setq NomDeVotreFichierMenu T)
(princ)

Maintenant, à chaque ouverture de dessin, la routine NomDeVotreFichierMenu_DEM sera exécuté. Si la variable globale NomDeVotreFichierMenu n'est pas initialisée, elle chargera le menu partiel correspondant par le biais de la commande AutoCAD _MENULOAD.

! ATTENTION : Dans l'exemple, on suppose que le fichier .mnu est dans un répertoire du chemin de recherche AutoCAD.


Retour au trucs et astuces