常用ActiveX控件
定义属性(外部可以访问的有关数据): • 取得属性值(内部用Get过程返回属性值)
Public Property Get Propertyname() As Type Propertyname: 自定义属性名称 Type: 属性值的类型
• 对属性赋值(内部用Let过程指定属性值)
Public Property Let Propertyname(ByVal Value As Type)
RichTextBox控件
方法:
– SaveFile:将控件的内容存入文件 – LoadFile:向控件加载一个RTF文件或文本文件, 加载文件的内容将取代原内容
RichTextBox1.SaveFile(filename, filetype) – rtfRTF:将文本以RTF格式打开或保存(缺省) – rtfText:将文本以ASCII文本格式打开或保存
SldBottomRight, SldTopLeft, Sldboth, SldNoTicks
– tickFrequency :设置或返回刻度标记的频率
Slider控件
方法:
– ClearSel:清除控件的当前选择,即将SelStart属性 设置为Value属性,将SelLength属性设置为0 SelStart:设置或返回选择范围的起点 SelLength:设置或返回选择范围的长度 – GetNumTicks :返回在控件的Max和Min属性之间 的刻度数,与TickFrequency属性有关
rtfWholeWord;rtfMatchCase; rtfNoHightlight
RichTextBox控件
字体属性:
– SelBold:所选文本的字体是否加粗 – SelItalic:是否斜体 – SelUnderline:是否下划线 – SelStrikethru:是否阴影 – SelColor:字体颜色 – SelFontName:字体名称 – SelFontSize:字体大小
Slider控件
事件:
– Scroll:当单击控件或移动滑块时发生,在Click事 件之前发生
– Change :当Value值发生变化时发生
StatusBar控件
• 位于窗体的底部状态窗体,可显示各种状态数据 • 由Panel对象组成,最多可分16个Panel对象, Panel对象包含在Panel集合中, • 每个Panel对象可以有文本和图片 • 可以自动显示公共数据,如日期,时间和键盘状 态
自定义ActiveX控件
设计控件窗体的注意事项:
– 对控件中的所有元素进行处理(条件限制,事件响应), 与普通程序的设计方法相同 – 需要控制控件的大小变化,即控件的界面元素能适应 窗体的大小变化(编写Resize事件过程),这样在 普通工程的窗体上就可以随意改变控件的大小了
自定义ActiveX控件
常用ActiveX控件
PictureClip:保存一幅位图,可按区域选择供其它控件使用 ProgressBar:方块状的进度条 RichTextBox:有格式的文本编辑框 Slider:包含滑块和刻度标记的滚动条 Sstab:提供一组选项卡,每个选项卡为一个容器 StatusBar:提供状态栏 TabStrip:提供在同一区域定义多个页面 Toolbar:工具栏 TreeView:分层显示数据 UpDown:上下箭头按钮,可以滚动控制值的增减 WinSock:提供访问TCP和UDP网络服务的途径
StatusBar控件
属性:
– Panels:返回对Panel对象的集合引用 – Height, Width:当设置和返回控件的高度和宽度 – Style :设置或返回控件的类型 sbrNormal:显示所有的Panel对象,为缺省设置 sbrSimple:仅显示一个大Panel,不能通过Panel 集合来访问 – SimpleText:当Style设置为Simple时,设置或返回 显示文本
事件:
– SelChange:当前的选择改变或插入点改变时发生
TreeView控件
• 提供了树状的分层列表 • 含有Node对象集合 • 每个Node对象由一个标签和一个可选的位图组 成
TreeView控件
主要属性: – LineStyle:各Node对象之间显示的线的样式 – Nodes:返回TreeView控件的Node集合的引用 – DropHighlight:设置光标移动到Node对象上时显 示系统突出颜色 – HideSelection:设置控件失去焦点时,选中项是否 突出显示 – SelectedItem:返回对所选Node对象的引用 – Sorted:设置Node对象的子节点是否按字母排序 – Style:设置TreeView的图形类型 – LabelEdit:设置是否可以编辑Node对象的标签
TreeView控件Node对象的使用
(Nodes是Node对象的集合) 属性:
– Root, Parent, Child, FirstSibling, Next, Previous, LastSibling:返回与当前Node对象某种关系的其它 Node对象(根,父,子,第一个兄弟,上一个兄弟, 下一个兄弟,最后一个兄弟) – Index:唯一标识一个节点的索引值 – Item:利用位置(Index)或键(Key)返回集合中的成员 – Key:唯一标识一个节点的名称 – Selected:确定一个节点是否选中 – Sorted:确定某节点的子节点是否按字母排序 – Text:返回或设置节点中的文本
RichTextBox控件
方法: – Find:根据给定的字符串,在控件中搜索文本 RichTextBox1.Find(string, start, end, options) – string:要查找的字符串 – start:查找的起始索引值,第一个字符为0 – end:查找的终止索引值 – options:查找选项:
TreeView控件Node对象的使用
在Nodes集合中添加节点:
Add(relative, relationship, key, text, image, selectedimage)
• relative:(可选)已存在的 Node 对象的索引号或键值。 • relationship:(可选)指定的 Node 对象的相对位置。 • Key:(可选)唯一标识节点的字符串,可用于用 Item 方 法检索 Node。 • Text:(必需)在 Node 中出现的字符串。 • Image:(可选)在关联的 ImageList 控件中的图象的索引 • Selectedimage:(可选)在关联的 ImageList 控件中的 图象的索引,在 Node 被选中时显示。
RaiseEvent evtAlarm End If
TreeView控件Node对象的使用
在Nodes集合中删除节点:
• Clear 删除全部节点 • Remove(index) 删除指定节点
如何制作自己的ActiveX控件
一般步骤:
(1)新建一个ActiveX控件工程 (2)利用工具箱,在控件窗体上设定界面 (3)编辑加入控件的代码 (4)添加控件的属性、方法和事件 (5)创建一个标准应用程序作为ActiveX控件的运行容 器 (6)在标准应用程序的窗体上调试ActiveX控件 (7)编辑控件为.ocx文件类型
TreeView控件
主要方法:
– HitTest:取得位于X和Y坐标的Node对象,通常与 拖放操作一起使用 – StartLabelEdit:允许用户编辑标签,当 LabelEdit属性为tvwManual时,需用此方法启动 标签编辑动作 – GetVisibleCount:返回在控件区域的Node对象 的个数
StatusBar控件
方法:
– Add:给Panels集合增加一个Panel对象
事件:
– PanelClick:当单击Panel对象是发生,如果Style 设置为Simple样式时,将不引发该事件 – PanelDblClick :当双击Panel对象是发生
RichTextBox控件
提供了RTF格式文档,有丰富的文本格式,无Textbox控 件64K的容量限制 属性: – Text, TextRTF:设置或返回控件的文本 – FileName: 返回或设置装入 RichTextBox 控件的文 件名 – SelRTF:设置或返回控件当前选择的文本 – SelIndent:设置或返回向控件右边缩排的字数 – SelHangingIndent:指定所选段落第一行与后面各行 左边之间的距离 – SelRightIndex:设置或返回文本右边向右边界缩排 的字数
Slider控件
包含了滑块和可选的刻度标记的窗口 常用属性: – Value:设置或返回滑块的当前位置 – Max、Min :设置或返回的最大和最小值 – LargeChange、SmallChange :设置按页滚动或最 小滚动时滑块移动的刻度数目 – SelectRange :设置决定控件能否选择范围 – Orientation :设置控件是垂直还是水平 – TickStyle :设置或返回刻度标记的样式,如
– 在代码通用部分,声明用户自定义的事件(可以有事件参数)
• RaiseEvent
– 引发在控件中声明的一个自定义事件,需要了解该事件在什 么状态才引发。比如自定义时钟控件要引发一个闹钟事件, 应在Timer控件的Timer事件过程中加入以下的代码:
If iHour = txtHour And iMinute = txtMin And iSecond = 0 Then
TreeView控件
主要事件:
– AfterLabelEdit:在编辑当前选中的Node对象的标 签之后引发该事件 – BeforeLabelEdit:当试图编辑当前选中的Node对 象的标签时引发该事件 – Collapse:当TreeView的任何Node对象被折回时, 引发该事件 – NodeClick:当一个Node对象被单击时产生 – Expand:当任何一个Node对象被展开时,引发该 事件