• 转载


    -- 代码开始
    DialogMonitorOPS.unRegisterNotification id:#fxxkTheScript  /*注销之前可能未完成注销的这个ID回调函数*/
    
    -- 回调函数入口
    function Yvi_dlgMonitorNotification = 
    (
            /*句柄可以被用来作为大多用户接口(Interface: UIAccessor)的参数,
            利用 Interface: UIAccessor 方法可以使用该句柄作为参数,来收集有关当前对话框的详细信息并操作*/
            WindowHandle = DialogMonitorOPS.GetWindowHandle()/*返回当前对话框的窗口句柄*/
            WindowName = UIAccessor.GetWindowText WindowHandle/*返回给定窗口句柄的窗口标题*/
            if (WindowName != undefined) then
            (
                    -- 找到这个包含有“Save UVW”或 “保存 UVW”(中英文的区分)的保存文件对话框的窗口
                if ((findString WindowName "ll") != undefined or (findString WindowName "保存 UVW")!= undefined) then
                     (
                            -- 通过找到的”保存uvw文件“对话框窗口句柄,得到其所有子窗口,目的是找到输入文件名这个子窗口,用输入文件名。
                            chWindows = UIAccessor.GetChildWindows WindowHandle/* 通过给定的窗口句柄得到其所有子窗口的句柄,返回这些子窗口句柄的数组*/
                             --定义一个句柄输入模块,初始化为指向空
                            hEntryField = 0 
                            -- 在得到的所有子窗口数组中遍历,找出输入文件名的窗口即Combobox窗口,有可能有些是EditControl
                            for h = 1 to chWindows.count do
                            (
                                    if (chWindows[h] != 0) then
                                    (
    										print( UIAccessor.GetWindowText chWindows[h] )
    									
    									/*
                                            -- 这里得到ComboBox下拉框类型窗口
                                            if ((UIAccessor.GetWindowClassName chWindows[h]) == "ComboBoxEx32") then--返回给定窗口句柄的窗口类名
                                            -- 找到这个保存文件对话框输入文件名的ComboBox句柄输入模块
                                            hEntryField = chWindows[h]
    										
    									*/
    										
    										
    										if ( UIAccessor.GetWindowText chWindows[h] )=="确定" then  UIAccessor.PressButton  chWindows[h]
    										--UIAccessor.PressButtonByName chWindows[h] "确定(&S)"
                                    )
                            )
                            -- 如果找到了输入文件名的ComboBox窗口
                            if (hEntryField != 0) then
                            (
                                    -- 在文件保存对话框中的ComboBox窗口中输入文本,即输入保存完整路径的文件
                                    UIAccessor.SetWindowText hEntryField "tmp.uvw" /*通过给定的句柄,设置这个窗口句柄的文本*/
                                    -- 输入完文本后点击保存按钮,注意:中文中写法是这样的。下面注释中是英文的写法。其它写法错误
                                    UIAccessor.PressButtonByName WindowHandle "保存(&S)"/*通过给定的父窗口句柄,按下参数二给定的子窗口名称的按钮*/
                                    --UIAccessor.PressButtonByName WindowHandle "&Save" -- 英文写法
                                    --UIAccessor.PressButtonByName WindowHandle "&保存" -- 错误写法
                                    --UIAccessor.PressButtonByName WindowHandle "保存" -- 错误写法
                            )
                    )
            )
            true --结果返回true
    )
    
    DialogMonitorOPS.RegisterNotification Yvi_dlgMonitorNotification id:#fxxkTheScript/*通过用户定义的ID来注册一个通知回调函数,这个回调函数在上面已经定义好*/
    DialogMonitorOPS.Enabled = true /*设置对话框监视器启用状态*/
    
    -- 监视以下两行的操作
    -- 必须先选中场景中一个物体对象,否则保存不能保存
    --modPanel.addModToSelection (Unwrap_UVW ()) ui:on /*将3ds max命令界面切换到“UVW展开”面板中*/
    --$.modifiers[#Unwrap_UVW].unwrap.save()/*将选择的场景对象拥有的 uvw 保存,等同于直接鼠标单击“UVW展开”命令界面下的"保存..."按钮*/
    
    --DialogMonitorOPS.Enabled = false /*设置对话框监视器禁用状态*/
    --DialogMonitorOPS.unRegisterNotification id:#fxxkTheScript /*注销这个回调函数*/
    -- 代码结束
    
    /*
    
    
    DialogMonitorOPS.Enabled = false 
    DiaialogMonitorOPS.unRegisterNotification id:#fxxkTheScript
    
    */
    

      

  • 相关阅读:
    【Liunx】centos防火墙
    【Liunx】基础命令
    【Flask】CBV模式
    【Flask】第三方插件
    【Flask】登录练习
    【Flask】特殊装饰器
    【Flask】蓝图
    Django之视图层
    Django之路由控制配置
    Django之静态文件配置
  • 原文地址:https://www.cnblogs.com/gaitian00/p/3511701.html
Copyright © 2020-2023  润新知