BlackBox 发表于 2022-7-6 09:44:50

CUI子菜单';状态#039;

一个人如何成功地实现“!”带有子菜单项以指示哪个项当前处于活动状态(选中/按下)?
 
例子:
 
我有一个动态标题栏,它具有可见性状态。我已经在部分CUI(即将移植到CUIx)中创建了命令,这些命令可以更改所述标题栏的可见性状态。。。这很好用。
 
我遇到的问题是单步浏览子菜单项,并通过添加“!”来修改我所称的项的“状态”(该状态当前代表标题栏的可见性状态)作为前缀添加到子菜单项。
 
我做了几次尝试,以下是我的最新成果:
 

(defun FOO (arg / )
(vlax-for pop(vla-get-menus
                  (vla-item
                  (vla-get-menugroups (vlax-get-acad-object))
                  "FOO_CUI"))
   (vlax-for menupop
   (if (= "FOO_MENU" (vla-get-caption menu))
       (vlax-for cmd(vla-get-submenu menu)
         (if (= arg (vla-get-caption cmd))
         (vla-put-label cmd (strcat "!." (vla-get-label cmd)))
         (vla-put-label
             cmd
             (vl-string-subst "" "!." (vla-get-label cmd))))))))
(princ))

 
这成功地添加了“!”到子菜单项的标签,但不在同一个区域中,就像从CUI编辑器中完成一样。。。也许我追求的是错误的方法或属性?
 
这是我的参考“!”前缀:
 
页: [1]
查看完整版本: CUI子菜单';状态#039;