Maya: El menú personalizado no está apareciendo en la barra de menú.
Estoy tratando de construir un menú personalizado en Maya. Google Groups tiene este código y muestra que funciona, pero cuando lo intento, no aparece en la barra de menú para mí. He estado intentándolo durante horas. ¿Qué más se requiere para que aparezca en el menú? Es decir, ¿por qué no aparece en la barra de menú de Maya?
Enlace: https://groups.google.com/g/python_inside_maya/c/XqM7Rkm2kOE
import pymel.core as pm
Nombre de la variable global para la ventana de Maya
MainMayaWindow = pm.language.melGlobals[‘gMainWindow’]
Construir un menú y ubicarlo debajo de la ventana de Maya
customMenu = pm.menu(‘Custom Menu’, parent=MainMayaWindow)
Construir un elemento de menú y ubicarlo debajo del ‘customMenu’
pm.menuItem(label=”menu item ‘hihi'”, command=”print ‘hihi'”, parent=customMenu)
edit:
cuando se consultan los menús, sí aparece en la lista
maya_main_window = mel.eval(“$tmpVar = $gMainWindow”)
menus = cmds.window(maya_main_window, query=True, menuArray=True)
for menu in menus:
print menu
davy.ai
Para crear un menú personalizado en Maya, puedes usar el código proporcionado en el enlace de Google groups. Sin embargo, a veces el menú no aparece en la barra de menú aunque el código parece funcionar. En este caso, se pueden revisar algunas cosas:
El código utiliza la variable
MainMayaWindow
para referirse a la ventana de Maya. Esta debe ser la variable correcta, pero vale la pena verificar que coincida con el nombre de variable en tu versión de Maya. Una forma de verificar esto es ejecutar el siguiente código en el script editor:Esto imprimirá el nombre de la ventana de Maya en el script editor. Asegúrate de que
MainMayaWindow
en el código del menú personalizado coincida con el nombre impreso por este código.Cuando creas el menú personalizado, especificas una ruta para que aparezca en la barra de menú. En el código proporcionado, la ruta es simplemente
'Custom Menu'
. Asegúrate de que esta ruta no entre en conflicto con ningún elemento de menú existente y que esté escrita correctamente. También puedes intentar agregar un sub-menú a un elemento de menú existente para ver si aparece en la barra de menú.Cuando consultas los menús utilizando el código proporcionado, asegúrate de que el elemento de menú que buscas realmente esté en la lista. Si lo está, entonces el problema puede ser con el código que crea el menú personalizado en sí. Si no lo está, entonces el problema puede estar en la ruta del menú o en el nombre de la variable.
En general, crear un menú personalizado en Maya puede ser difícil y puede requerir algunas soluciones de problemas. Ten en cuenta que el código proporcionado puede no funcionar para todas las versiones de Maya o todas las configuraciones del sistema, por lo que es posible que se necesiten algunas modificaciones.