2012年2月14日 星期二

MAXscript : 如何自動觸發Dialog中的按鈕

在Max中有許多不被MAXscript直接支援的東西,譬如說Load Envelopes等等的Dialog,此時可靠一個callback function來解決,CGS的Bobo分享了這個方法,另外在這邊也有相關討論

fn ANoon_EnvelopeCallbackFunction =
(
    WindowHandle = DialogMonitorOPS.GetWindowHandle()
    theDialogName = UIAccessor.GetWindowText WindowHandle
    if theDialogName != undefined and matchpattern theDialogName pattern:"*Load Envelopes*" do
    UIAccessor.PressButtonByName WindowHandle "OK" true
)

DialogMonitorOPS.RegisterNotification ANoon_EnvelopeCallbackFunction ID:#ANoon_Envelopes
DialogMonitorOPS.Enabled = true

這個callback是case sensitive

沒有留言:

張貼留言