组件开发技术(编辑修改稿)内容摘要:

的值并设置。 集合 用户可以展开集合类型的属性 , 并把每一个集合元素看成一个 Boolean型:值为 True时 , 表示集合包含这个元素 , 值为False时 , 表示集合不包含该元素。 对象 对象属性必须由 TPersistent类派生。 编辑对象类型的属性常常需要有它们自己的属性编辑器。 然而 , 如果对象本身的属性也是公开的 , 则在对象观察器中允许用户展开这个对象类型的属性并分别编辑它们。 数组 数组属性必须有它们自己的属性编辑器 , 在对象观察器中无法编辑这种类型的属性 , 数组类型的属性是在类的 Public部分声明的。 表 111 属性类型及其说明 2.简单属性的声明 下面我们为该组件创建三个属性 BorderWidth、Caption和 Visible,其中 BorderWidth的类型为整型,其它两个属性是系统属性,用来设置标题和可见性。 代码编写好后,在包工程中编译该组件,然后新建一个工程,在窗体上添加一个 TClipBoardViewer组件,选中该组件,对象观察器窗口如图 118所示。 注意:对于用户定义的属性来说,一般要在类的Private部分定义一个存储该属性值的变量,变量名一般以 F开头,如本题的“ FBorderWidth”。 图 118 填加若干个属性后的对象及对象观察器 3.枚举型和集合型属性的声明 枚举型属性的设置 集合型属性的设置 4.数组属性的声明 可以为组件添加数组属性,数组属性的实现与简单类型属性的实现方法有一些不同,给属性设置值其实是设置数组元素的值,读取属性的值其实是读取数组元素的值,为标识读写的是数组属性的哪一个元素,读写方法中应增加一个表示数组元素下标的参数。 下面使用该组件给数组属性的每一个元素赋一个随机的两位数,然后求数组属性各元素值的平均值。 可按照以下步骤来实现: ( 1) 重新在包工程中编译组件单元; ( 2) 新建一个工程 , 在窗体 Form1上添加该组件 , 然后再添加一个各为 Button1的按钮组件。 设置 Button1的标题为 “ 求平均 ”。 ( 3) 再在窗体上添加一个名为 Label1的标签组件 , 用来显示求得的平均值。 ( 4)编写按钮组件的 OnClick事件代码。 ( 5)运行程序,单击 Button1按钮,程序的执行结果如图 1111所示。 图 1111 数组属性演示程序执行结果 5.对象属性的声明 组件的属性还可以是对象 , 对象的使用比较复杂 , 在使用之前要创建对象 , 在使用过后要释放对象 , 这都要在组件中自动实现。 一般是在类的构造器中创建对象 , 在析构器中释放对象。 在组件中添加事件 1.事件的来源 事件是一种特殊的属性,当某个动作发生时,就会执行预先指定的代码。 事件可能是由用户交互操作、操作系统、程序代码等产生。 事件的机制就是事件与相应的代码相联系,当事件发生时,就会调用相应的代码。 事件与代码的链接称为事件属性,以方法指针的形式提供。 而这样的代码就是处理事件的方法,称之为事件处理过程。 2.确定事件类型 事件类型 说明 TNotifyEvent 通知事件类型 , 是大多数事件的类型 , 只有一个Sender参数 TMouseEvent 鼠标事件类型 , 会传递鼠标位置 、 按键等信息 TKeyEvent 键盘事件类型 , 传入按下键的代码 TCloseQueryEvent。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。