#python #scripting #maya
#python #сценарии #maya
Вопрос:
Я пытался заставить команду правой кнопки мыши работать с icontextbutton в maya, используя python. Я знаю, что есть всплывающее меню, которое работает нормально, но я не хочу всплывающее окно, так как оно добавляет второй щелчок в рабочий процесс, вместо того, чтобы команда выполнялась при нажатии RMB. Кажется, нет документа по этому вопросу, и Google тоже не помогает, поэтому я надеюсь, что у кого-нибудь может быть идея, может быть, какие-то недокументированные флаги, о которых я не знаю. Таким образом, LMB должен выполнить одну команду, а RMB должен выполнить другую. Есть ли какой-нибудь способ сделать это?
Ответ №1:
Я бы рекомендовал прямо использовать Qt для этого, вместо того, чтобы оборачивать материал Python от Maya.
Тем не менее, вы можете добиться чего-то в основном функционального, подключив RMB через пустой popupMenu
:
import maya.cmds as cmds
window = cmds.window()
cmds.columnLayout(adjustableColumn=True )
cmds.iconTextButton(style='iconOnly', image1='spotlight.png', label='spotlight', command='print "left click"')
cmds.popupMenu(postMenuCommand='print "right click"')
cmds.showWindow(window)
Тем не менее, фокус на открытом, но невидимом меню, похоже, делает несколько щелчков немного «выключенными», но в остальном он кажется вполне пригодным для использования.
Комментарии:
1. Спасибо, пустое меню делает свое дело. Пока нет проблем с «выключенными» щелчками.