优化Pro/E 2001录制快捷键的脚本命令
(zyphio原创,转载请注明作者)
先说明,很想换野火或学UG,不过因工作地域和行业习惯,目前只能学着和使用Pro/E 2001,所以别BS我!!!
Pro/E 2001的快捷键除了系统定义的,我们还可以进行快捷键录制,实际上也就有点类似MS Office和Photoshop等软件的宏和批处理脚本。
Proe的快捷键录制后一般是保存到工作目录的config.pro中,只要用记事本之类的文本编辑器,便可以打开config.pro来查看和编辑脚本内容,修改和优化快捷键(这个比在proe界面中重新录制修改快得多,也方便得多)。
但即使录制时用最精简的操作步骤,一般也会含有不少多余的命令。
例如:“删除已选定特征”的操作是“主菜单>编辑>删除”,录制得到的脚本命令如下:
mapkey d @MAPKEY_NAME删除特征;@MAPKEY_LABEL删除特征;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `Edit`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshDelete`;
这脚本对应的快捷键是d,当我们选中一个特征,按下d时,你将看到主菜单的编辑菜单快速打开并关闭,就是菜单会闪一下,那个特征才被删除。
菜单这一闪,一方面减慢速度模型显示的刷新速度(在一些复杂几何组件中会比较明显),降低渲染效能;另一方面还会让屏幕闪烁,分散注意力的同时,影响视力。
所以,如何才能让菜单不闪的同时直接删除已被选中的特征呢?
经分析,菜单闪动一下的原因是执行了那快捷键脚本的前两行——
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `Edit`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
这前两行实际上是选择(~ Select)主菜单的编辑菜单后再关闭(~ Close)主菜单,但真正有效或是达到我们目的操作实际上是脚本的第三行激活(~ Activate)——
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshDelete`;
所以,原则上,我们可以把前两行删了,这在ProE中不会不影响第三行执行效果。
不过,当我们打开多个零件或组件时,如果脚本只有第三行,那又会造成某些情况下丢失激活窗口的操作焦点(搞过GUI编程的应知道),即会自动切换到其它没有激活的窗口,严重影响操作的流畅性和工作效率。
所以,如何保证不失去操作焦点的同时,又能让主菜单不闪呢?
方法很简单,把第一行脚本改为:
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
就是修改选择打开“编辑”菜单的代码“Edit”为“None”,也就是说把Edit这个单词改为非“View”、“Help”、“Information”等主菜单中没有单词就可以了,不推荐删除Edit,因为经测试,这个值留空的话,在某些特殊情况下还是会失去焦点。
既然没打开“编辑”菜单,脚本中的第二行关闭(~ Close)菜单就没意义了,但还是保留为好,经测试如果删除这一行,也会在某些快速切换的操作中失去焦点。
经如上改动,脚本执行时会选择主菜单中一个不存在的菜单,所以就不会弹出菜单,闪一下屏这样,也不会丢失激活窗口的操作焦点。
结果,这个快捷键脚本精简优化后如下:
mapkey d @MAPKEY_NAME删除特征;@MAPKEY_LABEL删除特征;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshDelete`;
附上更多已精简的快捷键脚本:
mapkey w @MAPKEY_NAME工作目录;MAPKEY_LABELt重新指定工作目录;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `File.psh_working_dir`;
mapkey h @MAPKEY_NAME隐藏特征;@MAPKEY_LABEL隐藏所选特征;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `View.psh_view_hide`;
mapkey r @MAPKEY_NAME定义;@MAPKEY_LABEL重定义特征;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshRedefine`;
mapkey e @MAPKEY_NAME截面草绘;@MAPKEY_LABEL进入特征草绘截面;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshRedefine`;\
mapkey(continued) ~ Select `Odui_Dlg_01` `odui_steps`1 `SECTION`;\
mapkey(continued) ~ Activate `Odui_Dlg_01` `odui_steps`1 `SECTION`;#SKETCH;
mapkey l @MAPKEY_NAME层;@MAPKEY_LABEL打开层窗口;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `View.psh_view_lyrs`;
mapkey q @MAPKEY_NAME阴影质量;@MAPKEY_LABEL提高模型显示的阴影质量;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `psh_view_mdldisp`;\
mapkey(continued) ~ Select `modeldisplay` `ModDsply_Tab`1 `ModDsply_Layout_Shade`;\
mapkey(continued) ~ Update `modeldisplay` `ModDsply_SB_ShadeQlty`8 ;\
mapkey(continued) ~ Activate `modeldisplay` `ModDsply_PB_OK`;
(zyphio原创,转载请注明作者)
先说明,很想换野火或学UG,不过因工作地域和行业习惯,目前只能学着和使用Pro/E 2001,所以别BS我!!!
Pro/E 2001的快捷键除了系统定义的,我们还可以进行快捷键录制,实际上也就有点类似MS Office和Photoshop等软件的宏和批处理脚本。
Proe的快捷键录制后一般是保存到工作目录的config.pro中,只要用记事本之类的文本编辑器,便可以打开config.pro来查看和编辑脚本内容,修改和优化快捷键(这个比在proe界面中重新录制修改快得多,也方便得多)。
但即使录制时用最精简的操作步骤,一般也会含有不少多余的命令。
例如:“删除已选定特征”的操作是“主菜单>编辑>删除”,录制得到的脚本命令如下:
mapkey d @MAPKEY_NAME删除特征;@MAPKEY_LABEL删除特征;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `Edit`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshDelete`;
这脚本对应的快捷键是d,当我们选中一个特征,按下d时,你将看到主菜单的编辑菜单快速打开并关闭,就是菜单会闪一下,那个特征才被删除。
菜单这一闪,一方面减慢速度模型显示的刷新速度(在一些复杂几何组件中会比较明显),降低渲染效能;另一方面还会让屏幕闪烁,分散注意力的同时,影响视力。
所以,如何才能让菜单不闪的同时直接删除已被选中的特征呢?
经分析,菜单闪动一下的原因是执行了那快捷键脚本的前两行——
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `Edit`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
这前两行实际上是选择(~ Select)主菜单的编辑菜单后再关闭(~ Close)主菜单,但真正有效或是达到我们目的操作实际上是脚本的第三行激活(~ Activate)——
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshDelete`;
所以,原则上,我们可以把前两行删了,这在ProE中不会不影响第三行执行效果。
不过,当我们打开多个零件或组件时,如果脚本只有第三行,那又会造成某些情况下丢失激活窗口的操作焦点(搞过GUI编程的应知道),即会自动切换到其它没有激活的窗口,严重影响操作的流畅性和工作效率。
所以,如何保证不失去操作焦点的同时,又能让主菜单不闪呢?
方法很简单,把第一行脚本改为:
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
就是修改选择打开“编辑”菜单的代码“Edit”为“None”,也就是说把Edit这个单词改为非“View”、“Help”、“Information”等主菜单中没有单词就可以了,不推荐删除Edit,因为经测试,这个值留空的话,在某些特殊情况下还是会失去焦点。
既然没打开“编辑”菜单,脚本中的第二行关闭(~ Close)菜单就没意义了,但还是保留为好,经测试如果删除这一行,也会在某些快速切换的操作中失去焦点。
经如上改动,脚本执行时会选择主菜单中一个不存在的菜单,所以就不会弹出菜单,闪一下屏这样,也不会丢失激活窗口的操作焦点。
结果,这个快捷键脚本精简优化后如下:
mapkey d @MAPKEY_NAME删除特征;@MAPKEY_LABEL删除特征;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshDelete`;
附上更多已精简的快捷键脚本:
mapkey w @MAPKEY_NAME工作目录;MAPKEY_LABELt重新指定工作目录;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `File.psh_working_dir`;
mapkey h @MAPKEY_NAME隐藏特征;@MAPKEY_LABEL隐藏所选特征;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `View.psh_view_hide`;
mapkey r @MAPKEY_NAME定义;@MAPKEY_LABEL重定义特征;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshRedefine`;
mapkey e @MAPKEY_NAME截面草绘;@MAPKEY_LABEL进入特征草绘截面;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `Edit.pshRedefine`;\
mapkey(continued) ~ Select `Odui_Dlg_01` `odui_steps`1 `SECTION`;\
mapkey(continued) ~ Activate `Odui_Dlg_01` `odui_steps`1 `SECTION`;#SKETCH;
mapkey l @MAPKEY_NAME层;@MAPKEY_LABEL打开层窗口;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `View.psh_view_lyrs`;
mapkey q @MAPKEY_NAME阴影质量;@MAPKEY_LABEL提高模型显示的阴影质量;\
mapkey(continued) ~ Select `main_dlg_cur` `MenuBar1`1 `None`;\
mapkey(continued) ~ Close `main_dlg_cur` `MenuBar1`;\
mapkey(continued) ~ Activate `main_dlg_cur` `psh_view_mdldisp`;\
mapkey(continued) ~ Select `modeldisplay` `ModDsply_Tab`1 `ModDsply_Layout_Shade`;\
mapkey(continued) ~ Update `modeldisplay` `ModDsply_SB_ShadeQlty`8 ;\
mapkey(continued) ~ Activate `modeldisplay` `ModDsply_PB_OK`;