创建窗口

pymel.core.windows.window()

此命令用来创建一个窗口,但不会显示窗口

显示窗口

pymel.core.windows.showWindow()

此命令用来显示指定窗口,如果没有指定则显示最近创建的窗口

import pymel.core as pm#创建一个窗口,名字为Renamepm.window(title="Rename")#显示这个窗口pm.showWindow()

创建表格布局

pymel.core.windows.rowColumnLayout()

此命令创建一个表格布局

创建选择框按钮

pymel.core.windows.checkBox()

此命令创建一个选择框

创建文本标签

pymel.core.windows.text()

此命令创建一个文本标签

创建文本控件

pymel.core.windows.text()

此命令创建一个可以输入的文本控件

import pymel.core as pm#创建一个窗口,名字为Rename,menuBar=True添加一个空菜单pm.window(menuBar=True,title="Rename")#创建一个菜单栏,标签为Editpm.menu(label='Edit')#创建一个子菜单栏,标签为Resetpm.menuItem(label='Reset')#创建help菜单栏,helpMenu=True为此菜单为help菜单,默认都在最右侧pm.menu(label='Help',helpMenu=True)#创建help菜单栏中的子菜单标签为helppm.menuItem(label='Help')#创建一个Preset菜单栏pm.menu(label='Preset')#创建一个表格布局,列数为3列,第一列的长度为16个单位,第二列长度为80,第三列长度为250,第三列会随布局大小变换pm.rowColumnLayout(numberOfColumns=3,columnWidth=[(1, 16),(2, 80),(3, 250)],adjustableColumn=3)#创建一个选择框pm.checkBox()#创建一个文本标签pm.text(label="File_name:")#创建一个可以输入文本的控件pm.textField()#显示这个窗口pm.showWindow()

对象重命名

pymel.core.general.rename()

重命名选中对象赋予对象唯一名称

import pymel.core as pm#创建一些物体pm.polySphere()pm.polyCube()pm.polyPlane()#全选pm.select(all=True)#获取已经选中的对象all_obj = pm.selected()#对所有选中对象重命名为aa(现有名称冲突,则将根据提供的名称为对象赋予唯一名称)for old_mdl_transform in all_obj:    pm.rename(old_mdl_transform,'aa')

创建分离器

pymel.core.windows.separator()

创建一个隔离的小部件(更加美观)

创建布局

pymel.core.windows.columnLayout()

创建一个布局,将子级排列在单个列中

创建按钮

pymel.core.windows.button()

创建一个按钮控件

创建确认对话框

pymel.core.windows.confirmDialog()

创建确认对话框

import pymel.core as pm#定义打开时的命令def on_file_name(*args):    #使后面的文本框可以编辑    pm.textField(file_name,edit=True,editable=True,enable=True)#定义关闭时的命令def off_file_name(*args):    #使后面的文本框不可编辑    pm.textField(file_name,edit=True,editable=False,enable=False)#获取工程文件路径obj_path = pm.sceneName()#尝试获取工程文件名try:    #获得文件名    task_name = obj_path.split('.')[-2].split('/')[-1]#如果超出范围except IndexError:    #创建确认对话框    pm.confirmDialog(        #对话框窗口名字        title='Warning',        #对话框内容        message='''No project file is set!File_name is empty.            ''',        #按钮名字        button='Yes',        defaultButton='Yes',        cancelButton='No',        dismissString='No'        )    task_name = ''#创建一个窗口,名字为Rename,menuBar=True添加一个空菜单pm.window(menuBar=True,title="Rename")#创建一个菜单栏,标签为Editpm.menu(label='Edit')#创建一个子菜单栏,标签为Resetpm.menuItem(label='Reset')#创建help菜单栏,helpMenu=True为此菜单为help菜单,默认都在最右侧pm.menu(label='Help',helpMenu=True)#创建help菜单栏中的子菜单标签为helppm.menuItem(label='Help')#创建一个Preset菜单栏pm.menu(label='Preset')#创建一个表格布局,列数为3列,第一列的长度为16个单位,第二列长度为80,第三列长度为250,第三列会随布局大小变换pm.rowColumnLayout(numberOfColumns=3,columnWidth=[(1, 16),(2, 80),(3, 250)],adjustableColumn=3)#创建分离器pm.separator( height=5, style='in' )pm.separator( height=5, style='in' )pm.separator( height=5, style='in' )#创建一个选择框,打开和关闭执行命令pm.checkBox(label='',onCommand=on_file_name,offCommand=off_file_name)#创建一个文本标签pm.text(label='File_name:',align='left')#创建一个文本的控件,不可选中,不可编辑,默认为工程文件名file_name = pm.textField(text=task_name,editable=False,enable=False)#创建分离器pm.separator( height=20, style='none' )pm.separator( height=20, style='none' )pm.separator( height=20, style='none' )pm.separator( height=30, style='none' )pm.separator( height=30, style='none' )#定义按下去的命令def change_name(*args):    #获取File_name文本名字    new_mdl_transform = pm.textField(file_name, query = True, text = True)    #获取选中的对象    all_obj = pm.selected()    for old_mdl_transform in all_obj:        #更改名字        pm.rename(old_mdl_transform,new_mdl_transform)#在第三列中创建一个布局pm.columnLayout(columnAttach=('both', 50))#在第三列中创建一个按钮为Apply按钮,设置其宽度apply_button = pm.button(label='Apply',width=80)#编辑按钮添加按钮按下去执行的命令pm.button(apply_button, edit=True, command=change_name)#显示这个窗口pm.showWindow()

选择框可控制输入文本开启关闭

感谢:

Hal

Unclechen

select命名_Maya中Pymel写个带界面的重命名工具(一)相关推荐

  1. java中文本框显示在命令按钮后面_Maya中Pymel写个带界面的重命名工具(一)

    创建窗口 pymel.core.windows.window() 此命令用来创建一个窗口,但不会显示窗口 显示窗口 pymel.core.windows.showWindow() 此命令用来显示指定窗 ...

  2. mysql字段重命名_MySQL中使用SQL语句对字段进行重命名

    MySQL中,如何使用SQL语句来对表中某一个字段进行重命名呢?我们将使用alter table 这一SQL语句. 重命名字段的语法为:alter table change . 现在我们来尝试把tes ...

  3. Python之pandas:对pandas中dataframe数据中的索引输出、修改、重命名等详细攻略

    Python之pandas:对pandas中dataframe数据中的索引输出.修改.重命名等详细攻略 目录 对pandas中dataframe数据中的索引输出.修改.重命名等详细攻略 知识点学习 输 ...

  4. Mac自带的批量重命名工具竟然如此强大?

    如果你需要对文件进行批量命名,Mac自带的批量命名工具能大大提升你的效率. 假如你需要为这些图片重新命名,将这些图片命名为墙纸并且加上连续的序号,选中图片后单击右键,选择给项目重新命名,在弹出面板的格 ...

  5. 给图纸中的光栅对象、外部参照重命名

     给图纸中的光栅对象重命名,使其名称中带有引用它的dwg文件的名称,便于区分 例如: [a.dwg] 使用[b.jpg],使用函数后[b.jpg]文件名变为[a.dwg-b.jpg],这样转移[a ...

  6. Python+Excel系列: 案例三:批量重命名一个工作薄中的所有工作表、批量重命名一个工作簿中的部分工作表

    文章目录 批量重命名一个工作薄中的所有工作表 批量重命名一个工作簿中的部分工作表 批量重命名一个工作薄中的所有工作表 例:把table文件夹下一个工作簿中所有工作表名中的"销售"二 ...

  7. python写一个带界面母亲节贺卡

    当然可以! 下面是一个简单的例子,使用 Python 的 Tkinter 模块创建一个带界面的母亲节贺卡. 首先,导入 Tkinter 模块: import tkinter as tk

  8. linux重命名的命令行操作,Linux rename命令批量重命名的方法

    Linux的 rename 命令有两个版本,一个是C语言版本的,一个是Perl语言版本的,早期的Linux发行版基本上使用的是C语言版本的,现在已经很难见到C语言版本的了,由于历史原因,在Perl语言 ...

  9. 【批量识别图片内容改名】如何批量识别图片中的文字并自动改名,如何根据图片上的文字内容重命名图片,批量的识别区域内容如何重命名改名,全部告诉你

    废话: 在工作和生活和学习工作中我们经常遇到大量的图片需要进行根据图片内容来重命名图片 有的是扫描全部图片内容进行重命名,文字必须是少量的255个字 有的是需要获取图片指定位置的图片内容进行重命名,多 ...

  10. 重命名技巧,支持多个文件夹快速重命名

    你是否还遇到类似的问题?很多的文件夹需要挨个的重命名,比如说有几百个,几千个,那么挨个重命名得费多少时间,下面来试试这个操作,快速批量重命名文件夹,听着还不错,一起来看看. 本次用到的工具是文件批量改 ...

最新文章

  1. 异步通知是什么意思_一次相亲经历,我彻底搞懂了阻塞非阻塞、同步异步
  2. Linux系统服务器如何禁ping
  3. MySQL高可用群集------配置MMM高可用架构
  4. Linux中pthread源码在哪,pthread - 源码下载|系统编程|Linux/Unix编程|源代码 - 源码中国...
  5. 【收藏】Harbor私有仓库中如何彻底删除镜像释放存储空间:vmware/registry:2.6.2-photon进行垃圾回收
  6. JAVAEE框架之Spring JdbcTemplate
  7. armgcc交叉编译的文件无法运行_认识GCC交叉编译器
  8. 安装 sql server 2005 com+ 目录要求警告 解决方案
  9. qt生成无ui界面动态库,有ui界面的动态库,以及含有资源文件和qss文件的动态库
  10. php中如何加密,PHP中的加密功能
  11. 我这么玩Web Api(二):数据验证,全局数据验证与单元测试
  12. python模板语言_3 个 Python语言 模板库比较
  13. 信号与系统:综述【知识梳理】
  14. DevOps-SRE岗位到底是什么?
  15. 2018校园招聘笔经面经合集:算法,机器学习,大数据方向
  16. 基于SGIP协议的短信网关接口
  17. 音频处理-1 基础知识
  18. 医疗卫生信息化领域的一些术语和标准
  19. HTTPS/HTTP
  20. 学徒浅析Android——Android原生下载机制针对0K大小文件下载异常的分析

热门文章

  1. 树莓派初始化安装与配置
  2. CVPR2022 Oral | CosFace、ArcFace的大统一升级,AdaFace解决低质量图像人脸识
  3. 图片加载框架之 ImageLoader
  4. LeetCode-C#实现-二叉树/二叉搜索树(#98/104/111/230)
  5. maven修改本地仓库地址配置文件
  6. java 事件处理机制
  7. [转]十五天精通WCF——第七天 Close和Abort到底该怎么用才对得起观众
  8. 堆内存与栈内存能不能共享,不能,,通俗的比较,堆主要用来存放对象的,栈主要是用来执行程序的...
  9. java的两种核心机制(一)
  10. signal(SIGHUP, SIG_IGN)的含义