Maya cmds.button 상세 매뉴얼

Maya cmds.button 상세 매뉴얼
 

개요

 

Autodesk Maya의 cmds.button 명령어는 버튼 UI 요소를 생성하는 데 사용됩니다. 버튼은 클릭 시 특정 명령 또는 기능을 실행할 수 있는 인터랙티브 요소입니다. Maya에서 도구와 스크립트의 사용자 인터페이스를 만드는 데 필수적인 구성 요소입니다.

 

구문

 

cmds.button([name], [label], [command], [annotation], [align], [bgc], [defineTemplate], [docTag], [enable], [enableBackground], [fullPathName], [height], [highlightColor], [isObscured], [manage], [noBackground], [numberOfPopupMenus], [parent], [popupMenuArray], [preventOverride], [useTemplate], [visible], [width])

 

플래그

 

annotation (`ann`): 주석 문자열을 지정하며, 툴팁으로 표시됩니다.

cmds.button(annotation="This is a button", ...)

 

align (`align`): 버튼 내부의 텍스트 정렬을 지정합니다.

cmds.button(align='center', ...)

 

backgroundColor (`bgc`): 버튼의 배경 색상을 지정합니다.

cmds.button(backgroundColor=(0.5, 0.5, 0.5), ...)

 

command (`c`): 버튼이 클릭될 때 실행할 명령을 지정합니다.

cmds.button(command='print("Button clicked!")', ...)

 

defineTemplate (`dt`): 버튼에 사용할 UI 템플릿을 설정합니다.

cmds.button(defineTemplate="myTemplate", ...)

 

docTag (`dtg`): 버튼에 문서 태그를 추가합니다.

cmds.button(docTag="myDocTag", ...)

 

enable (`en`): 버튼을 활성화할지 여부를 지정합니다.

cmds.button(enable=True, ...)

 

enableBackground (`ebg`): 버튼의 배경 색상을 활성화합니다.

cmds.button(enableBackground=True, ...)

 

fullPathName (`fpn`): 버튼의 전체 경로 이름을 반환합니다.

cmds.button(fullPathName="buttonPathName", ...)

 

height (`h`): 버튼의 높이를 지정합니다.

cmds.button(height=50, ...)

 

highlightColor (`hlc`): 버튼의 강조 색상을 지정합니다.

cmds.button(highlightColor=(1.0, 0.5, 0.5), ...)

 

isObscured (`io`): 버튼이 가려져 있는지 여부를 반환합니다.

cmds.button(isObscured=True, ...)

 

label (`l`): 버튼의 라벨 텍스트를 지정합니다.

cmds.button(label="Click Me", ...)

 

manage (`mng`): 버튼의 가시성과 기타 속성을 관리합니다.

cmds.button(manage=True, ...)

 

noBackground (`nbg`): 버튼에 배경이 없도록 지정합니다.

cmds.button(noBackground=True, ...)

 

numberOfPopupMenus (`npm`): 버튼에 연결된 팝업 메뉴의 수를 반환합니다.

cmds.button(numberOfPopupMenus=1, ...)

 

parent (`p`): 버튼의 부모 레이아웃을 지정합니다.

cmds.button(parent="layoutName", ...)

 

popupMenuArray (`pma`): 버튼에 연결된 팝업 메뉴 배열을 반환합니다.

cmds.button(popupMenuArray=["popup1", "popup2"], ...)

 







 

preventOverride (`po`): 버튼의 오버라이드를 방지합니다.

cmds.button(preventOverride=True, ...)

 

useTemplate (`ut`): 버튼에 사용할 UI 템플릿을 설정합니다.

cmds.button(useTemplate="templateName", ...)

 

visible (`vis`): 버튼이 보일지 여부를 지정합니다.

cmds.button(visible=True, ...)

 

width (`w`): 버튼의 너비를 지정합니다.

cmds.button(width=200, ...)

 

예제

 

기본 사용법

 

이 예제는 클릭 시 메시지를 출력하는 간단한 UI를 생성합니다:

import maya.cmds as cmds

def simple_button_ui():
    if cmds.window("simpleButtonUI", exists=True):
        cmds.deleteUI("simpleButtonUI")
    
    cmds.window("simpleButtonUI", title="Simple Button UI", widthHeight=(200, 100))
    cmds.columnLayout(adjustableColumn=True)
    
    cmds.button(label="Click Me", command='print("Button clicked!")')
    
    cmds.showWindow("simpleButtonUI")

simple_button_ui()

 

고급 사용법

 

이 예제는 여러 버튼을 폼 레이아웃에 배치한 고급 사용법을 보여줍니다:

import maya.cmds as cmds

def advanced_button_ui():
    if cmds.window("advancedButtonUI", exists=True):
        cmds.deleteUI("advancedButtonUI")
    
    cmds.window("advancedButtonUI", title="Advanced Button UI", widthHeight=(400, 200))
    form = cmds.formLayout()
    
    button1 = cmds.button(label="Button 1", width=100)
    button2 = cmds.button(label="Button 2", width=100)
    button3 = cmds.button(label="Button 3", width=100)
    button4 = cmds.button(label="Button 4", width=100)
    
    cmds.formLayout(form, edit=True, 
                    attachForm=[
                        (button1, 'top', 10), (button1, 'left', 10),
                        (button2, 'top', 10), (button2, 'right', 10),
                        (button3, 'bottom', 10), (button3, 'left', 10),
                        (button4, 'bottom', 10), (button4, 'right', 10)
                    ],
                    attachControl=[
                        (button2, 'left', 10, button1),
                        (button4, 'left', 10, button3)
                    ])
    
    cmds.showWindow("advancedButtonUI")

advanced_button_ui()

 

이 상세 매뉴얼은 Maya의 cmds.button 명령어에 대한 종합적인 개요를 제공하며, 구문, 플래그, 기본 및 고급 사용 예제를 다룹니다.