编程定制菜单和对话框
MFC定制(右键)菜单和快捷键

1、打开菜单模板编辑器
2、插入空白菜单项
按Insert键,如果已有则编辑之3、编辑菜单(标题)
注:&D表示助记键为D
4、编辑下拉菜单
注:...表示将弹出对话框
5、插入分隔符
将空白菜单项属性的分隔符勾上
6、定制级联菜单
将下拉菜单项的弹出属性选上
7、添加菜单项说明,内容将在状态栏显示
定制快捷键
1、添加快捷键提示文本
即在菜单项标题属性中添加类似“\tCtrl+K”的字符串,其中“Ctrl+K”就是快捷键。
2、添加快捷键资源
打开快捷键编辑器;
双击最后一行,编辑快捷键属性;
注:ID标签与菜单项ID对应。
定制右键(浮动)菜单
1、定制菜单模板
注:和普通菜单定制方法一样,“浮动”是要通过代码来实现的。
2、代码实现:为视图类添加右键事件响应函数OnRButton Up
为视图类添加成员变量
3、修改右键事件响应函数OnRButtonUp.
4、将右键菜单资源添加到主框架类,为该类添加事件响应函数。
注:视图类接管处理按键和鼠标消息,当右键事件触发视图类的响应函数时将显示右键菜单;
而主框架类接管菜单项命令消息,当点击某菜单项就触发主框架类,进而调用响应函数。
VBA自定义工具栏和按钮设计方法

VBA自定义工具栏和按钮设计方法在Microsoft Office套件中,VBA(Visual Basic for Applications)是一个强大的编程语言,它允许用户自定义各种自动化和扩展功能。
其中之一就是自定义工具栏和按钮。
本篇文章将探讨VBA中自定义工具栏和按钮的设计方法。
一. 创建自定义工具栏自定义工具栏是一组自定义按钮的集合,用于在Office应用程序中方便地访问常用功能和宏。
以下是创建VBA自定义工具栏的步骤:1. 打开VBA编辑器首先,打开你想要自定义工具栏的Office应用程序(如Word、Excel 等),然后按下Alt + F11打开VBA编辑器。
2. 插入自定义工具栏在VBA编辑器中,点击“插入”选项卡,然后选择“用户窗体”菜单下的“工具栏”选项。
这将插入一个自定义工具栏。
3. 重命名和自定义工具栏选中新插入的自定义工具栏,然后在“属性”窗口中将其名称更改为你喜欢的名称。
接下来,右键单击工具栏并选择“定制”,你将能够在弹出的对话框中自定义工具栏的按钮。
4. 添加按钮在“定制”对话框中,选择“新命令”按钮,然后从命令列表中选择一个你想要添加到工具栏中的命令。
你还可以选择图标和提示,以及可选的快捷键。
点击“确定”将按钮添加到工具栏。
5. 完成完成后,关闭VBA编辑器。
现在,你将在Office应用程序的工具栏上看到你自定义的工具栏。
你可以拖动它到任何你希望它出现的位置。
二. 创建自定义按钮除了自定义工具栏,你还可以直接在工具栏上创建单独的自定义按钮。
以下是创建自定义按钮的步骤:1. 打开VBA编辑器同样地,首先打开Office应用程序,按下Alt + F11打开VBA编辑器。
2. 选择宿主工具栏在VBA编辑器中,点击菜单栏上的“工具”选项,然后选择“自定义工具栏”进行编辑。
你也可以通过右键单击任何现有工具栏上的空白区域,选择“自定义...”来进行编辑。
3. 添加按钮在自定义工具栏编辑模式下,选择要放置按钮的位置,然后右键单击,选择“定制对话框...”来打开按钮定制对话框。
UGNX-vb二次开发

用进行UGNX二次开发山东理工大学.精密模具实验室C#二次开发步骤也如此,基本一个样。
站在开发而非用户需求的角度UG二次开发主要分为三个方面:菜单工具条的定制、对话框、dll或者exe程序。
咱们的主要用dll方式,因为需要交互操作。
1:菜单定制:打开D:\UGS\NX5.0\UGII\ugii_env.dat 搜索UGII_USER_DIR,添加一行如下图所示的文字UGII_USER_DIR=D:\UGS\NX5.0\NXCAPP 注意,前面不要有#号,这是注释的符号。
在UGS\NX5.0目录下建立一个目录NXCAPP,在NXCAPP下建立两个子目录startup和apllication1.创建目录并配置环境变量(1)自定义创建。
创建一个文件夹如D:\UG_OPEN, 在此文件夹下创建二级文件夹D:\UG_OPEN\APPLICATION和D:\UG_OPEN\STARTUP。
打开UG安装目录下的UGII中ugii_env.dat文件,修改UGII_USER_DIR下的路径,如UGII_USER_DIR=D:\UG_OPEN,并去掉前面的“#”。
(2)第三方创建。
找到UG安装目录下的UGALLIANCE下的VENDOR文件夹,查看其下是否存在Application和Startup文件夹,如果不存在则创建它们。
打开UG安装目录下的UGII中ugii_env.dat文件,将UGII_VENDOR_DIR前面的“#”去掉。
(3)系统自己创建。
找到UG安装目录下的UGALLIANCE下的SITE文件夹,查看其下是否存在Application和Startup文件夹,如果不存在则创建它们。
打开UG安装目录下的UGII中ugii_env.dat文件,将UGII_SITE_DIR前面的“#”去掉。
这三种方法的区别在于系统启动时加载的顺序不同,依次为site,vendor和用户自己定义的。
Application主要存放dlg文件,所谓dlg文件就是用UGNX的UIStyler编辑出来的对话框文件。
用 UTD 文件创建定制的对话框和工具条

概述用户工具是一种允许您将通常执行的操作隔离到一个位置的定制工具。
用户工具可启动菜单项、宏、Open C 和C++ API 以及Open GRIP 程序和其他用户工具。
每个用户工具都由一个.utd 文件创建。
NX 提供一个模板.utd 文件,您可以修改该模板文件来创建您的用户工具。
基本的UTD 文件包含一个文件头块或工具条文件头块。
用户工具对话框还可包含多个图标资源板块、一个列表框块和多个按钮资源板块。
用户工具工具条可包含一个图标资源板块,这是单独的一行图标。
本文将重点介绍用户工具对话框。
加载在NX 会话期间加载用户工具1. 选择首选项→用户界面来打开用户界面首选项对话框。
2. 选择用户工具选项卡。
“用户工具”页上的列表框显示NX 中当前加载的所有用户工具。
3. 选择加载按钮。
这会打开加载工具文件对话框,允许您加载任何定制 .utd 文件。
4. 选择一个用户工具定义(utd) 文件,然后单击确定。
在NX 启动期间加载用户工具custom_dirs.dat 文件中包含的目录startup下自动加载对话框用户工具对话框在外观上与标准NX 对话框类似。
它包含用来放置定制构建图标、排列成资源板格式的操作按钮和列表框的区域。
位于底部的是标准导航按钮(自动隐藏、确定、应用和取消)。
对于每个图标、动作按钮以及列表框项目,都可以关联菜单项、宏、Open C 和C++ API 以及Open GRIP 程序,或用户工具。
当单击按钮或双击用户工具对话框中的列表项时,NX 启动关联的可执行文件或宏。
可以使用用户工具对话框执行菜单项、宏、Open C 和C++ API 以及Open GRIP 程序,和其他用户工具。
还可以在宏内部访问Open GRIP 和Open C 以及C++ API 程序。
对话框界面示例用户工具对话框还可包含多个图标资源板块、一个列表框块和多个按钮资源板块。
源码示例以“铣削加工”对话框为例,其utd源文件内容为TITLE 铣削加工VERSION 2!OPTION DISMISS ON!OPTION TOOLBARBUTTONSCOLUMNS 1NAME 加工坐标系TYPE MENU_BUTTONACTION UG_DRAFT_DRW_MODIFYNAME 确认、验证TYPE UFUNACTION E:\workSpace\UserProjects\SysApp\utd\YzhTcBrowse_Test.dllLISTLABEL 列表框SIZE 3NAME 选择毛坯TYPE GRIPACTION ${UG_DRAFTWIZARD_DIR}\grip\edit_drawing_size.grxNAME 选择部件TYPE GRIPACTION ${UG_DRAFTWIZARD_DIR}\grip\new_drawing_part.grxNAME 选择加工区域TYPE GRIPACTION ${UG_DRAFTWIZARD_DIR}\grip\new_drawing_asm.grxNAME 区域分割TYPE MENU_BUTTONACTION UG_PREFERENCES_DRAFTINGNAME 生成操作几何体TYPE MENU_BUTTONACTION UG_PREFERENCES_DRAFTING关键字说明头文件强制性关键字文件头块包含基本UTD 文件的强制性关键字。
vb通用对话框名词解释__概述说明以及解释

vb通用对话框名词解释概述说明以及解释1. 引言1.1 概述在软件开发中,对话框是一种常见的用户界面元素,用于与用户进行交互和获取输入。
VB通用对话框是一种基于Visual Basic编程语言的对话框类型,具有广泛的应用领域和重要性。
本文将详细介绍VB通用对话框的概念、重要性、应用场景以及常见名词解释和功能解析。
此外,还将提供实际操作指南与技巧,并展望VB通用对话框未来可能的发展趋势。
1.2 vb通用对话框概念说明VB通用对话框是使用Visual Basic编程语言开发的一种标准化对话框。
它为开发人员提供了一套预定义的、可直接调用和使用的界面组件,以便更快速地构建用户友好的应用程序界面。
通过使用VB通用对话框,开发人员可以轻松地创建窗体、按钮、文本框等基本控件,并实现与用户的交互。
它提供了丰富的功能库和方法,使得开发过程更加高效和便捷。
1.3 目的本文旨在帮助读者全面了解VB通用对话框在软件开发中的重要性和作用。
通过介绍其应用场景以及常见名词解释和功能解析,读者可以更好地理解如何使用VB通用对话框构建用户友好的界面和实现与用户的交互。
此外,本文还提供了实际操作指南与技巧,帮助读者掌握基本的VB通用对话框的创建和使用方法。
最后,本文还展望了VB通用对话框未来可能的发展趋势,旨在激发读者对该领域的兴趣并为其未来的研究或应用提供参考。
2. VB通用对话框的重要性和应用场景2.1 为什么需要VB通用对话框:VB通用对话框是一个在软件开发中非常重要的工具,它可以提供给用户一个交互界面,通过该界面用户可以进行各种操作和输入。
VB通用对话框的存在使得软件开发更加高效和便捷,因此它成为了不可或缺的一部分。
2.2 VB通用对话框在软件开发中的作用:VB通用对话框可以帮助程序员创建各种功能丰富的用户界面。
它提供了一系列常见控件,如按钮、文本框、复选框等,以及与这些控件交互的方法和属性。
使用VB通用对话框,开发者可以快速创建一个简单易用、美观大方的用户界面,并将其与应用程序逻辑进行连接。
vb6.0 对话框和菜单

阶段5 “字体”对话框
“字体”对话框用来设置并返回所用字体
的名称、样式、大小、效果及颜色等。
一.设计时建立“字体”对话框
设计时,在通用对话框控件的属性页窗 口“字体”选项卡中设置属性,包括字 体名称、字体大小、最小、最大、标志 、样式等。
二.运行时显示“字体”对话框
运行时,使用通用对话框控件的 ShowFont方法,或将Action属性赋值为4 ,可以显示“字体”对话框。在“字体 ”对话框中选定设置并关闭对话框。
一.控件名称 自定义,默认名称CommonDialog1、 CommonDialog2、……
二.设计时设置控件属性
用鼠标右键单击窗体上的CommonDialog控件图标,在 弹出的快捷菜单中选择“属性”选项,或在属性窗口 中选择“自定义”,再单击右侧的“„”按钮,就可 以打开”属性页“对话框。
三.打开通用对话框的Action 属性
⑴ 显示打开文件对话框 ⑵ 显示保存文件对话框 ⑶ 显示颜色对话框 ⑷ 显示字体对话框 ⑸ 显示打印机设置对话框 ⑹ 显示Windows帮助对话框
四.打开通用对话框的“方法”
⑴ ⑵ ⑶ ⑷ ⑸ ⑹ 显示打开文件对话框 显示保存文件对话框 显示颜色对话框 显示字体对话框 显示打印机设置对话框 显示Windows帮助对话框
菜单的类型 菜单编辑器 下拉式菜单 弹出式菜单
阶段1 菜单的类型
菜单是界面设计的重要组成部分,一般有两种基本类型:
下拉式菜单和弹出式菜单。 下拉式菜单通过打击菜单栏中的菜单标题来打开。
弹出式菜单则通过用鼠标左键或右键单击某个 区域的方式打开。
阶段2 菜单编辑器
VB
6.0没有菜单控件,但提供了建立菜单的菜单编辑器。 在VB 6.0集成开发环境中,选择“工具”菜单中的“菜 单编辑器”选项,可以进入菜单编辑器,为窗体编辑菜 单。
MFC C++登录对话框编写步骤

3.1 创建“登录”对话框 3.1.1 生成默认对话框工程 1.进入VC++ 安装Microsoft Visual Studio 6.0 后,在开始菜单中单击Microsoft Visual Studio 6.0子菜单下的Microsoft Visual C++ 6.0,即可打开VC++ 6.0 编程平台,如图3.2所示。
(c)“用户名”静态文本标签
(d)“确认”按钮属性
如图3.16(e)所示,在“密码”编辑框属性的Styles 选项卡中勾选 Password。这样,程序运行后,用户输入密码到编辑框时将会显示“***”符号。
(e)“密码”编辑框属性
图3.16 设置控件属性
添加的控件可能大小不一,此时可以选定某个控件,移动鼠标到控件边缘 处出现双箭头来调整大小。要设置多个控件之间的位置大小关系时,先按住 Shift键不放,然后用鼠标选取控件,直到所需要的多个控件选取之后再释放 Shift键。若在选取时,对已选取的控件再单击一下,则取消该控件选取。一旦 单个控件被选取后,其四周由选择框包围着,选择框上还有几个蓝色实心小方 块,拖动它可改变控件的大小;多个控件被选取后,其中只有一个控件的选择 框有几个蓝色实心小方块,这个控件称为“主要控件”,而其他控件的选择框 的小方块是空心的。如图3.17所示。
图3.20 “New Class”对话框
Байду номын сангаас
2.为“登录”对话框设置控件关联变量 使用MFC ClassWizard可以很容易地为一个控件定义关联变量并可设置其数 据范围。例如,下面的步骤是为CDlgLogin类的控件IDC_EDIT1和IDC_EDIT2即 “用户名”和“密码”编辑框添加关联变量m_user和m_pass。 (1)按快捷键Ctrl + W,打开MFC ClassWizard,并切换到Member Variables页面,如图3.21所示。
win32设计菜单、点击显示弹出对话框(内含可实现源代码)

专业课程实验报告课程名称:windows程序设计开课学期: 2015至2016 学年第1学期专业:计算机科学与技术年级班级:2013级学生姓名:刘敏学号:222013*********实验教师:刘红俊计算机与信息科学学院软件学院wcex.lpszMenuName = MAKEINTRESOURCE(IDC_WIN32PROJECT2);2.对话框资源及其应用:1)模式对话框:①定义对话框资源:资源文件中如此定义对话框资源:对话框名 DIALOGEX x,y,weight,hightSTYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION ""FONT 9, ""BEGIN对话框的控件定义END②调用函数DiaLogBox显示对话框;③构造对话框消息处理函数;④关闭对话框。
2)非模式对话框:①定义非模式对话框:STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION |WS_SYSMENU|WS_VISIBLE②创建对话框函数:HWND CreateDialog{hInst, MAKEINTRESOURCE(IDD_SHOWBOX),hWnd,(DLGPROC)DlgProc}③消息循环:while (GetMessage(&msg, NULL, 0, 0)){if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)){TranslateMessage(&msg);DispatchMessage(&msg);}}④关闭对话框:DestroyWindow(hDlg);3)程序加载图标:IDI_WIN32PROJECT2 ICON "Win32Project2.ico"IDI_SMALL ICON "small.ico"(三)程序代码:Win32Project2.cpp// Win32Project2.cpp : 定义应用程序的入口点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三种菜单编程实现
1.新建插件工程mon。
2.添加依赖插件
3.新建包mon.handler。
4.新建类NewFolderHandler,并继承AbstractHandler
5.在插件根节点新建plugin.xml文件和icons文件夹。
6.扩展mands,并添加如下扩展信息:
7.扩展org.eclipse.ui.handlers,添加信息如下:
1.查找要扩展的视图ID,经过系统查询,视图ID为com.teamcenter.rac.ui.views.DetailsView。
2.根据前面所讲的视图菜单扩展规则,在扩展点添加视图菜单代码如下:
3.通过Eclipse启动Teamcenter客户端,进入系统,则可以看到所添加的视图菜单:
1.根据前面所讲的上下文菜单扩展规则,在扩展点添加上下文菜单代码
2. 重启Teamcenter系统,点击右键菜单,可以出现我们的上下文菜单
添加My New Folder到File主菜单
1.根据前面所讲的主菜单扩展规则,在扩展点添加主菜单代码
2.启动Teamcenter系统并进入,就可以看到我们客户化的菜单项
1.控制菜单出现在固定的透视图,代码如下所示:
2.该方式控制My New Folder在My Teamcenter透视图中,如要添加到多个应用或者透视图中
通过activeWhen可以控制菜单的启用与禁用
1.在现有代码工程中建立自己的主菜单,并添加My New Folder菜单项,代码如
下:
新建mands.newmyfolder包。
2.新建NewFolderCustomAction类,该类继承AbstractAIFAction类并对run
方法进行重写,代码如下:
3.新建NewFolderCustomCommand类并继承AbstractAIFCommand类
4.新建NewFolderCustomDialog类,并继承AbstractAIFDialog类,并实现
InterfaceAIFOperationListener方法。
其中核心代码如下:
5.新建NewFolderCustomOperation类,并继承AbstractAIFOperation。
重写executeOperation()
方法。
创建文件夹的逻辑操作都在该类中进行了实现,实现代码如下:
6.在新建文件夹Handler类中添加代码,进行Action的调用,调用代码如下:
8. 通过Eclipse启动TC,进行创建文件夹的测试,效果如下:。