当前位置:编程学习 > VB >>

VB控件的制作

就是做一个ProgressBar控件
追问:那个不好看啊,想自己弄个

答案:要使用usercontrol对象

UserControl 对象

Visual Basic 创建的 ActiveX 控件总是包括一个 UserControl 对象,另外还包括其它被称作子控件的控件,子控件就是控件制作者放在 UserControl 对象上的控件。

与 Visual Basic 窗体类似,UserControl 对象也有代码模块和可视化的设计器。如图 9.1 所示。在 UserControl 对象设计器上放置子控件就如同往窗体上放置控件一样。

图9.1 UserControl 设计器和代码窗口

与窗体类似,UserControls 被存储在普通格式的文本文件中,该文件包含 UserControl 以及它的子控件的源代码和属性值。在 Visual Basic 中,这些文件的扩展名为 .ctl。

.ctl 文件、完成控件的 ActiveX 控件工程、.ocx 文件之间的关系如图 9.2 所示。

图 9.2 把 ActiveX 控件工程建立成 .ocx 文件

如果 UserControl 或其子控件使用了不能用普通文本文件存储的图形元素,例如位图,那么 Visual Basic 就把它存入与 .ctl 同名的 .ctx 文件中。这与用 .frx 存储窗体的图形元素是相似的。

.ctl 和 .ctx 文件完备地定义了 ActiveX 控件的外观和接口(属性、方法和事件)。可以在任何类型的工程中包含 .ctl 文件。本章后面的“ActiveX 控件打包的两种方法”将详细讨论这个主题。

委派组成 ActiveX 控件的 UserControl 和子控件

ActiveX 控件由 UserControl 和它的子控件组成,因为事实上每个实例都将包含这些对象。

也就是说,在窗体上放置 ActiveX 控件的实例时,就创建了 UserControl 对象,以及放在 UserControl 设计器上的所有子控件的实例。这些对象都被封装在控件中。

UserControl 对象有自己的接口,即它的属性、方法和事件。ActiveX 控件的接口可以委派给 UserControl 对象的接口成员,通过封装,这些成员对控件的用户是隐藏的。

也就是说,与其自己写代码来实现 BackColor 属性,不如将其委派给 UserControl 对象的 BackColor 属性,让它来做这件工作。实际上,这就意味着 ActiveX 控件的 BackColor 属性只需要简单地调用 UserControl 对象的 BackColor 属性就行了。

同样地,也可以在 UserControl 对象现有的 Click 事件的基础上设计您的控件的 Click 事件。

ActiveX 控件的接口也可委派放在 UserControl 设计器上的子控件的属性、方法和事件为代表,这些将在本章后面的“显露子控件的属性”,“在控件中添加方法”,“显露子控件的事件”中讨论。

详细信息 关于在 UserControl 设计器上可以放置哪些控件,请参阅在本章后面的“可用作子控件的控件”中。

不是有完成的么~?~

上一个:vb闅忔満鏁伴棶棰?- 宸茶В鍐?- 鎼滄悳闂棶
下一个:初学者 VB代码求解

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,