在用户窗体上添加工具栏

合集下载

U8开发之工具栏控件

U8开发之工具栏控件

U8工具栏控件摘要工具栏<Toolbar>是U8应用程序常用的界面元素.把菜单中常用的命令做成按钮安排在工具条中,配上适当的图标符号和文本提示,能够极大地方便用户.U8产品开发尤其是前台UI开发中,工具栏控件和窗体一样是系统展现不可缺少的一部分.在早期U8产品开发过程中大量使用了微软的MSToolbar,但是随着U8ERP产品开发的精细化、专业化,微软的MSToolbar在界面设计和程序开发中暴露出了诸如界面图标配置不灵活、不支持多级菜单、不适应复杂应用场景、对多语的支持不够完善等开发问题.为了弥补这些不足,并且兼容之前的产品,U8平台提供了工具栏控件.在V11版本中,又对工具栏在UE效果上做了进一步改进,采用Ribbon工具栏风格,形成了现在U8产品的工具栏效果.什么是工具栏?Ribbon风格:Ribbon是一种以皮肤与标签页为架构的用户界面<User Interface>,原先出现在Microsoft Office 2007 与2010 的Word、Excel和Powerpoint 等组件中,后来也被运用到Windows 7 的一些附加组件等其它软件中,如画图和写字板,以与Windows 8 中的资源管理器.它是一个收藏了命令按钮和图标的皮肤.它把命令组织成一组"标签",每一组包含了相关的命令.每一个应用程序都有一个不同的标签组,展示了程序所提供的功能.在每个标签里,各种的相关的选项被组在一起.设计Ribbon的目的是为了使应用程序的功能更加易于发现和使用,减少了点击鼠标的次数.门户Toolbar:从门户树形菜单或全景式菜单打开的选项卡式窗体〔即嵌入门户的窗体〕中包含的工具栏称为门户Toolbar.如下图所示:图门户Toolbar示意图由于门户工具栏是U8各产品较常见且核心的内容,所以有必要介绍门户工具栏内部的一些概念,包括排版组、分组、按钮样式等.以下分别介绍:按钮分组:在门户Toolbar上,两个分割线之间的区域即为一个按钮分组.图按钮分组示意图排版组:每个纵向排列的按钮集合即为一个排版组,排版组形式可能表现为一个大按钮、或者两个小按钮、三个小按钮.如下图:〔一个大按钮〕〔两个小按钮〕〔三个小按钮〕按钮样式主要表现为普通按钮、下拉菜单〔带设置默认功能〕、下拉菜单〔不带设置默认功能、Toggle按钮、Combobox类型按钮.〔Toggle按钮〕〔普通按钮〕〔下拉菜单〔不带设置默认功能〕〕〔下拉菜单〔带设置默认功能〕〕〔显示模板信息的按钮为Combobox类型按钮〕由于单据是U8产品常见且核心的功能,所以单据上除了有门户Toolbar以外,也包含自己的Toolbar,方便用户能够快速定位功能.单据的Toolbar包括表头Toolbar和表体Toolbar.表头Toolbar:表头工具栏并不是一个完整的工具栏,表头工具栏只是包含刷新、翻页〔首页、前页、后页、末页〕、高级等按钮.其他的是单据表头的一部分,是单据控件的内部功能.如下图所示:图表头Toolbar示意图表体Toolbar:表体工具栏是指单据表体顶部的工具栏,主要是针对表体的一些便捷操作的功能集合,方便用户浏览、操作表体数据时进行本单据的个性化操作.如下图所示:图表体Toolbar示意图模态窗体Toolbar:非嵌入门户的窗体上的Toolbar工具栏.这种窗体上的按钮样式相对门户Toolbar要少,没有Combobox类型、没有排版组和大小按钮的概念.U890、U810.0、U810.1版本的按钮样式和U811.0模态窗体Toolbar的按钮样式相同.图模态窗体Toolbar目标本文主要介绍工具栏控件的基础知识,应用过程与相关注意事项,方便各类U8产品开发人员更好的使用工具栏控件,更高效的开发产品.工具栏可以做什么?工具栏是U8应用程序开发中必不可少的组件,工具栏支持多语、支持键盘快捷键、支持多级菜单的展示和运用、支持设置图标和文字、集成MSToolbar方便业务组快速开发同时保持程序的向后兼容性.1.V10.1与之前版本工具栏特性由于V11.0版本只是在界面UE效果和工具栏构建方式上做了修改,其他内容均和之前版本相似,所以这里不做重点的讲解,这些版本的样式和ssss相同.使用方式将在[如何使用工具栏组件]中介绍.2.V11特性a)支持流式布局➢没有权限的按钮不显示,相同排版组内其余按钮自动重新排版.排版组可以定义小按钮最大行数.当出现空白列时,后面的按钮自动向前平移.➢一个排版组内按钮因授权问题导致只有一个小按钮时自动升级为大按钮.➢相关系统没有启用而导致的不可用功能按钮不显示,如工作流没有启用,提交按钮不显示.➢有权限但当前单据状态或者操作状态下不可用按钮置灰.b)支持多行显示图多行显示示意图➢工具栏高度为三行横向排版小按钮高度.➢大按钮图标和标签采用上下排版,按钮占整个工具栏可用高度〔三行小按钮〕.➢小按钮图标和标签左右排版,当一列有三个小按钮时工具栏可用高度三等分、纵向中对齐,当一列有两个小按钮时工具栏可用高度二等分、纵向中对齐,当一列只有一个小按钮时工具栏可用高度二等分,纵向中对齐,按钮放在第一行.➢当相邻有多个小按钮时,可以把它们划分为一个或者多个排版组,每个排版组可以指定排版行数.c)支持分组➢按钮支持按分组排列、排版组信息d)多按钮样式➢普通小按钮、下拉菜单小按钮、有默认功能的下拉菜单小按钮➢普通大按钮、下拉菜单大按钮、有默认功能的下拉菜单大按钮3.数据字典a)V11.0数据字典b)二次开发数据字典如何使用工具栏控件?1.老版本应用工具栏控件〔890/10.0/10.1〕首先引用MSToolbar、UFToolbar组件一定要注意,引用MSToolbar要引用Microsoft Windows Common Controls 6.0<sp6>也就是MSComctl.ocx,不要引用MSComCt2.ocx然后在窗体上增加MSToolbar、UFToolbar、ImageList设计MSToolbar得到的效果如下:2.V11.0版本应用工具栏控件在V11.0版本中,工具栏组件为了能够规范业务组的编程并配合整体UE设计效果,做了两个大的调整:Ribbon风格、UE效果和支持数据库预置按钮的方式.对于UE和Ribbon风格已经在[什么是工具栏]中做了介绍,在此不再赘述.下面讲解如何通过数据库预置的方式设计U8的工具栏.a)预置数据数据表结构和字段说明详见[工具栏可以做什么]中的V11.0数据字典.如果想结合数据字典了解工具栏的具体预置方法,可以执行下面的脚本,参考采购订单的预置内容.下面是预置数据示例b)在所在窗体上引用相关组件此过程和老版本应用工具栏控件执行窗体上引用相关组件相同,可参考上一节,再此不再赘述.c)执行如下代码即可加载工具栏组件d)按钮图片名遵循的约定V11.0中有一点和老版本应用工具栏控件不同,老版本应用工具栏控件,如果希望按钮是带图标的,则必须有ImageList控件,该控件加载按钮的相应图标.在数据库中通过AA_FormButtons_Base和AA_FormButtonMenus_Base表的cPic字段体现,具体可以参考数据字典.只需要预置文件名即可,不要带路径和扩展名.门户Toolbar区域的按钮分大按钮和小按钮,图片分别存在于U8soft\icons\BigIcon和U8soft\icons\SmallIcon\目录下,要预置数据可去相关文件夹寻找对应的图片名.表头Toolbar区域的图片名是固定的,分别如下高级按钮无图片,可不预置定位结果与历史按钮图片是固定的,系统默认的,无需预置该按钮刷新按钮图片名:Refresh首页按钮图片名:first page上一页按钮图片名:Previous Page下一页按钮图片名:Next page末页按钮图片名:Last page表体Toolbar区域均不包含图片,无需图片名特别要说明的是工具栏组件不仅支持数据库预置按钮的方式,为了保持向后的兼容性,仍然支持该章节第一部分老版本应用工具栏控件的方式,详见1、老版本应用工具栏控件.3.二次开发应用工具栏控件a)检查所在窗体是否支持二次开发工具栏组件原则上都可以支持二次开发行为,但由于某些界面没有这方面的需求,所以并没有支持二次开发功能在一个界面上同时按住Ctrl+Shift并点击任何一个按钮,这样你所需要的信息将被Copy 到写字板<附件中的写字板>上,〔注意不是记事本notepad〕.b)数据预置相关数据结构在二次开发数据字典的AA_CustomerButton表中,可查阅相关内容.c)脚本预置示例d)对外接口4.复杂场景应用工具栏控件a)老版本升级到V11具体方式和V11.0版本应用工具栏控件相同.可以参考[如何使用工具栏控件]中V11.0版本应用工具栏控件章节.下面主要说明老版本升级到V11需要注意的几个方面:bobox类型按钮〔显示模板、打印模板按钮〕显示模板、打印模板按钮是Combobox类型的,预置数据时iToolbarStyle字段要预置成55.Combobox类型按钮需要在窗体上增加一个Combobox的VB控件,然后初始化时需要将该控件直接作为Tag对象赋值给Toolbar按钮的Tag不要再给MSToolbar设计按钮,按钮直接从数据库加载,不要再给MSToolbar 赋ImageList,按钮图片都从数据库加载,不再从ImageList中取如果是单据界面,需要给单据控件赋Otoolbar对象Set oVoucher.Otoolbar=UFToolbar无论是单据界面还是列表界面都要给UFToolbar调用SetFormInfob)老版本不升级仍然在V11中使用对于这种情况.之前开发的按钮应该是自己在窗体上加MSToolbar和UFToolbar,然后直接在MSToolbar上〔设计时〕增加按钮,调用UFToolbar.SetToolbar MSToolbar来把MSToolbar上按钮加载到界面上显示的UFToolbar上.之后可以改变MSToolbar上对应按钮的状态,Enable 或Visible.然后调用UFToolbar.RefreshEnable或UFToolbar.RefreshVisible来改变UFToolbar上对应按钮状态.如果不想迁移到新的方案〔即把按钮或菜单的数据预置到对应数据库表中的方案〕.可能在按钮状态变换的时候会有一些问题,这时候需要调用UFToolbar.EndRefresh〔即在原来调用RefreshVisible和RefreshEnable的地方调用EndRefresh〕i.Tag对象约定MsToolbar的Tag对象在V11中不再被二次开发和业务组开发使用,请不用随意给按钮或者Menu的Tag赋字符串值,如果要赋值,请构造Tag对象赋值〔不建议使用〕老版本不升级到11.0还想在11.0中使用,一般按钮不会出现问题,但是按钮的下拉菜单可能会有问题〔可能会出现菜单点不出来的情况〕.对于这种情况就需要在构造完MSToolbar 之后,UFToolbar.SetToolbar之前构造每个菜单的Tag属性.代码示例如下但是这种情况下可能UE效果不能达到11.0的效果要求,其他的没有影响.c)多单据控件界面Toolbar方案比如这个设备管理的单子,我们拿一个按钮来说这是设备管理的定位按钮,设备管理上有三个单据控件表头是一个单据控件〔只有表头项〕,表体是两个单据控件,分别记录文档和设备参数.因为表头没有排序定位的按钮,所以可以看到上面预置的数据里面字段iVoucherCtrlIndex分别是1和2,没有0的.〔单据控件上有个属性叫Key.如果一个窗体只有一个单据控件,则Key取默认值0即可.不用额外给单据控件赋Key属性.如果界面有多个单据控件,则必须给每个单据控件赋Key属性.这个界面上表头的单据控件的Key=0,表体文档的那个单据控件的Key=1,设备参数那个单据控件的Key=2〕数据库里面的iVoucherCtrlIndex对应着各个单据控件的Key.将来单据控件上的按钮就靠这个key和cToolbarPosIndex<P/T/B>这两个参数来区分.预置完成数据之后在界面上可以填充数据库数据到窗体的UFToolbar上调用UFToolbar的Settoolbarfromdata方法.可参考[如何使用工具栏控件]中V11.0版本应。

C# 工具栏控件

C#  工具栏控件
ToolStripProgressBar
该控件将所有ToolStripProgressBar的漂浮和显示功能与其典型进程跟踪功能组合在一起。ToolStripProgressBar在大多数情况下由StatusStrip承载,在很少情况下由ToolStrip承载。
下面通过一个实例,来说明ToolStrip控件的使用。该实例中分别向ToolStrip控件中添加了两个Text Button按钮和一个toolStripComboBox控件。操作步骤如下所示:
表9-3 ToolStrip控件的属性
属性
作用
Dock
获取或设置ToolStrip停靠在父容器的哪一边缘
AllowItemReorder
获取或设置一个值,指示拖放和项重新排序是否专门由ToolStrip类进行处理
LayoutStyle
获取或设置一个值,指示ToolStrip如何对其项进行布局
IsDropDown
1
为应用程序创建工具栏,需要使用到ToolStrip控件及其相关的类。ToolStrip控件可以按钮的方式显示多个命令,提供用户访问命令的快捷方式,从而提高命令的访问效率。ToolStrip控件具有如下几种功能。
在各容器之间显示公共用户界面
创建易于自定义的常用工具栏,允许用户进行自定义、调节按钮以及展开未显示按钮。
提供一个容器,通过面板对工具栏中的元素进行布局排列和显示
ToolStripRenderer
处理工具栏对象中的绘制功能
ToolStripProfessionalRenderer
为工具栏提供Microsoft Office样式的外观
ToolStripManager
控制工具栏的呈现和漂浮,并控制工具栏中各种菜单的合并

Excel编程高手VBA中的用户界面设计技巧

Excel编程高手VBA中的用户界面设计技巧

Excel编程高手VBA中的用户界面设计技巧VBA(Visual Basic for Applications)是在Excel中进行编程的一种宏语言,它可以帮助用户实现更高效、更便捷的操作和数据处理。

在Excel编程高手VBA中,用户界面的设计至关重要,影响着用户的交互体验和操作效率。

本文将介绍一些Excel编程高手在VBA中常用的用户界面设计技巧。

一、自定义菜单和工具栏在Excel中,我们可以通过自定义菜单和工具栏,将常用的功能操作集中到一个位置,方便用户快速访问。

通过VBA编程,我们可以自定义菜单项、增加快捷键等等,来实现自定义菜单和工具栏的设计。

例如,我们可以使用`CommandBars`对象、`Controls`属性和`Add`方法来创建自定义菜单和工具栏,并通过`OnAction`方法绑定相应的VBA 代码,实现自定义功能的调用。

二、窗体和对话框设计窗体和对话框是用户界面设计的重要组成部分,可以将复杂的操作和功能以更友好的方式呈现给用户。

在VBA中,我们可以通过`UserForm`对象来设计和显示窗体和对话框。

通过添加各种控件(如文本框、按钮、复选框等),我们可以快速构建一个简洁、美观的用户界面。

在窗体和对话框上,我们可以添加相应的事件代码,实现与用户的交互和数据处理。

三、工作表操作的界面化Excel的主要功能是处理和分析数据,因此,对于Excel编程高手而言,对于工作表操作的界面化设计尤为重要。

通过VBA编程,我们可以在工作表上添加按钮、下拉菜单或者自定义的单元格样式,来实现界面化的工作表操作。

例如,我们可以使用`Range`对象和`Worksheet`对象来实现对单元格数据的读取和写入,并通过`Worksheet_SelectionChange`事件等来实现根据用户选择实时更新数据的功能。

四、错误处理和提示信息在实际使用中,用户界面的设计不能只注重功能的实现,还需要考虑到错误处理和提示信息的展示。

AddMenu 操作

AddMenu 操作
可以使用FindRecord操作来查找满足由FindRecord参数所指定的条件的数据的第一个实例。该数据可以在当前的记录中、在后面或前面记录中或在第一个记录中。所查找的记录可以位于活动的表数据表、查询数据表、窗体数据表或窗体中。
使用GoToControl操作,可以把焦点移到打开的窗体、窗体数据表、表数据表或查询数据表中当前记录的指定字段或控件上。如果要让某一特定的字段或控件获得焦点,可以使用该操作。然后可将获得焦点的字段或控件用于比较或FindRecord操作。另外,还可以根据特定的条件,使用该操作在窗体中进行定位。例如,如果用户在“健康保险”窗体中的“婚姻”控件下输入“否”,那么焦点会自动跳过“配偶姓名”控件而移到下一个控件。
使用Restore操作可将已最大化或最小化的窗口恢复为原来的大小。
注释该操作不能应用于“Visual Basic编辑器”中的代码窗口。有关如何影响代码窗口的信息,请参阅WindowState属性主题
安全性在宏或应用程序中运行可执行文件或代码时要格外小心。对可执行文件或代码执行操作时可能危及计算机和数据的安全。
使用SelectObject操作可选择指定的数据库对象。
安全性请避免使用SendKeys语句或带敏感或机密信息的AutoKeys宏。恶意用户可能截取键击,这样将危及计算机和数据的安全。
可以使用SendKeys操作将键击直接发送到Microsoft Access或活动的基于Windows的应用程序。
使用SendObject操作,可以将指定的Microsoft Access数据表、窗体、报表、模块或数据访问页包括在电子邮件中,然后可以在电子邮件中查看并转发它。在Microsoft Outlook、Microsoft Exchange或其他使用邮件应用程序编程接口(MAPI)的电子邮件应用程序中,可以在邮件中包括格式为Microsoft Excel 2000 (*.xls)、MS-DOS文本(*.txt)、RTF (*.rtf)或HTML(*.html)的对象。

窗体属性设置

窗体属性设置

窗体属性设置窗体设计的核心工作是窗体属性设置。

在窗体的诸多属性中,数据源(记录源)属性是最重要的属性,对于数据展示或数据编辑窗体而言,数据源是必须指定的。

1.窗体数据源有两种方法指定窗体数据源:1)在“新建窗体”对话框的“请选择该对象数据的来源表或查询”下拉列表中选择一个表或查询;2)在窗体属性窗口中设置“记录源”属性。

选中窗体对象,然后点击“属性”工具栏按钮或选择“视图”→“属性”菜单;“筛选”属性用于设置筛选条件,为一个关系表达式或逻辑表达式。

筛选属性设置只有在运行窗体时选择了“应用筛选”操作(点击“应用筛选”工具栏按钮或选择“记录”→“应用筛选/排序”)工具栏才实际执行筛选操作;●“排序依据”属性用于设置排序字段序列(用逗号分隔),每个字段后面可以选择排序次序;●“允许筛选”属性设置为“是”,运行窗体时才能执行筛选操作,如果设置为“否”,运行窗体时不能执行筛选操作;●“允许编辑”、“允许删除”、“允许添加”属性均可以选择“是”或“否”,选择“否”时表示不允许相应操作。

“允许编辑”设置为“是”,运行窗体时可以编辑修改已有记录,“允许删除”设置为“是”,运行窗体时可以删除已有记录,“允许添加”设置为“是”,运行窗体时可以添加新记录;●“数据输入”属性用于设置是否是数据录入窗体。

只当“允许添加”设置为“是”时,本属性设置为“是”才起作用,这时窗体只能进行新记录录入;●“抓取默认值”属性设置为“是”时,添加的新记录显示默认值,设置为“否”时,添加新记录不显示默认值。

图5-37为一个实际设置的例子。

图5-37 数据源属性设置2.窗体格式属性设置属性窗口中“格式”选项卡用于设置窗体的显示格式,如窗体主体节显示样式、边框样式、滚动条、图片显示方式等。

“标题”、“默认视图”属性是最重要的格式属性。

“标题”属性用于设置窗体运行时的显示标题,为一文本串。

添加字段及控件1.向窗体添加字段设置了窗体数据源之后,即自动打开字段列表弹出窗口(图5-38)。

delphi trichedit用法

delphi trichedit用法

delphi trichedit用法Delphi Trichedit用法1. 什么是Delphi TricheditDelphi Trichedit是Delphi提供的一个组件,用于创建和编辑RTF格式的文本。

它支持丰富的文本格式设置和自定义功能,适用于开发各种文本编辑程序。

2. 创建Trichedit控件要使用Delphi Trichedit,首先需要在Delphi的窗体上创建一个Trichedit控件。

你可以在Delphi的组件面板上找到Trichedit控件,并将其拖放到窗体上。

3. 设置Trichedit的属性Trichedit控件具有许多属性,可以通过设置这些属性来控制文本的格式和行为。

以下是一些常用的属性及其说明:•Font:设置文本的字体、字号和样式。

•Color:设置文本的颜色。

•ReadOnly:设置是否只读,如果设置为True,则无法编辑文本。

•WordWrap:设置是否自动换行。

•ScrollBars:设置是否显示滚动条。

•PlainText:获取或设置文本的纯文本内容。

4. 设置文本格式通过Trichedit控件的属性和方法,可以对文本进行格式设置,例如:•SelAttributes:获取或设置当前选中文本的属性,例如字体、字号和颜色。

•Paragraph:设置段落的缩进、对齐方式和行距等属性。

•Lines:获取或设置文本的内容,可以通过添加、删除、插入和替换等方法来编辑文本。

5. 处理事件Trichedit控件还支持各种事件,可以在事件处理程序中编写代码来实现一些自定义功能。

以下是一些常用的事件:•OnChange:文本内容发生改变时触发的事件。

•OnKeyPress:按下键盘按键时触发的事件。

•OnSave:将文本保存到文件时触发的事件。

•OnLoad:从文件加载文本时触发的事件。

6. 导出和导入文本通过使用Trichedit控件的方法,可以将文本导出为RTF格式或纯文本格式,也可以从文件导入文本。

第2节、综合练习:实现登陆窗体

第2节、综合练习:实现登陆窗体

综合练习:实现登陆窗体1、创建一个工程启动VB,在出现的“新建工程”对话框中,单击“打开”按钮,建立一个标准EXE工程。

2、添加标签控件,并修改Caption属性②在窗体设计窗口中拖拽出一个标签在窗体中添加两个标签控件,默认名称分别为Label1和Label2。

在窗体中单击标签Label1,在属性窗口中将Caption属性设置为“用户名:”;在窗体中单击标签Label2,在属性窗口中将Caption属性设置为“密码:”;设置后的效果如图:3、添加文本框控件,将Text属性清空②在窗体设计窗口中拖拽出一个文本框在窗体中添加两个文本框控件,默认名称分别为Text1和Text2。

在窗体中单击文本框Text1,在属性窗口中将Text属性清空。

在窗体中单击文本框Text2,在属性窗口中将Text属性清空。

设置后的效果如图:4、添加按钮控件,修改Caption 属性在窗体中添加两个按钮控件,默认名称分别为Command1和Command2。

②在窗体设计窗口中拖拽出一个按钮在窗体中单击按钮Command1,在属性窗口中将Caption属性设置为“登陆”;在窗体中单击按钮Command2,在属性窗口中将Caption属性设置为“退出”;设置后的效果如图:5、添加代码,实现登陆和退出功能双击按钮Command1,系统自动生成Command1的单击事件在代码窗体中添加如下代码:If Text1.Text = "student" And Text2.Text = "student" ThenMsgBox ("登陆成功")ElseMsgBox ("登陆失败,请检查用户名和密码!")End If单击Command1,如果文本框Text1和Text2中的值全部为student,提示“登陆成功”,否则提示“登陆失败,请检查用户名和密码!”。

上面的代码不需要自己书写,直接复制就可以了。

vb6 操作mdi子窗体的方法

vb6 操作mdi子窗体的方法

VB6(Visual Basic 6.0)是微软推出的一种编程语言,它具有结构清晰、易学易用的特点,因此在开发Windows应用程序时被广泛使用。

MDI(Multiple Document Interface)是VB6中常用的一种界面类型,它允许用户在一个父窗体中打开多个子窗体,并且可以方便地在这些子窗体之间进行切换和管理。

在MDI应用程序中操作子窗体是非常常见的需求,如何在VB6中操作MDI子窗体呢?接下来,我们将介绍一些操作MDI子窗体的方法。

一、创建MDI子窗体在VB6中创建MDI子窗体非常简单,只需要在MDI父窗体中添加一个新的子窗体即可。

我们需要在VB6中创建一个MDI项目,然后在MDI父窗体的工具栏中点击“新建子窗体”按钮或者通过编程方式调用"Load"方法来创建一个新的MDI子窗体。

二、操作MDI子窗体的属性和方法在VB6中,我们可以通过操作MDI子窗体的属性和方法来实现对子窗体的管理和控制。

通过设置MDI子窗体的Visible属性可以控制子窗体的显示和隐藏;通过设置MDI子窗体的Title属性可以修改子窗体的标题;通过调用MDI子窗体的Close方法可以关闭子窗体等等。

三、切换和激活MDI子窗体在MDI应用程序中,切换和激活子窗体是非常常见的操作。

在VB6中,我们可以通过调用MDI父窗体的ActiveForm属性来获取当前激活的子窗体,并通过调用MDI子窗体的Activate方法来激活指定的子窗体。

另外,我们还可以通过在MDI父窗体的窗口菜单或者工具栏中添加相应的菜单项或按钮来实现切换和激活子窗体的功能。

四、动态创建和销毁MDI子窗体除了在设计时创建MDI子窗体外,我们还可以在运行时动态地创建和销毁MDI子窗体。

在VB6中,我们可以通过编程方式调用"Load"方法来动态创建新的MDI子窗体,然后通过调用MDI子窗体的Unload 方法来销毁不再需要的子窗体。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

技巧1 在用户窗体上添加工具栏
在错误!未找到引用源。

中我们在用户窗体上使用API函数添加了菜单,还可以在用
户窗体上继续添加工具栏用以显示一列下拉菜单的位图按钮,单击一个工具栏按钮等于选择
一个菜单命令,以提供对常用功能和命令的快速访问。

在用户窗体上添加工具栏可以使用Toolbar控件,在设计模式下右键单击“工具箱”,在显示的右键菜单中选择“附加控件”,在显示的对话框中选择“Microsoft Toolbar Control,veision 6.0”控件,在用户窗体上添加一个Toolbar控件。

如图1-1所示。

图1-1 选择Toolbar控件
因为需要在Toolbar控件按钮中使用图标,所以还需要在用户窗体中添加一个ImageList 控件保存所需要的图像文件,在ImageList控件的属性页中插入6张图片,如图1-2所示。

相关文档
最新文档