在对象察看器中看来就是下拉列框选择值。
集合类型属性:tset=(set1,set2,set3);
tsets=set of tset;
fsets:tsets;
property sets:tsets read fsets write fsets;
在对象察看器中看来,就是列出几个选项分别设置真假。比如tform的bordericons属性即是。
对象类型属性:一个属性是一个对象,而这个对象必须派生自tpersistent或者他之下的类,才能在对象察看器中可以展开它,并设置它里面的属性。
数组类型属性:数组属性如果要在对象察看器中看见,需要有自己的属性编辑器(如果不想在对象察看器看当然就不用啦),是比较高级的组件,在后来的组件制作再来介绍,会更直观一些。这里只给出它的定义形式:
property selected[index: integer]: boolean read getselected write setselected;
三,事件:事件其实是一种特殊的属性,他是指针类型,指向一个事件方法类型。当有特定的事件发生时,它就会关联到一段执行代码。
下面以一个例子来讲解事件是怎么发生的。
我们先定义一个鼠标点下事件的鼠标事件类型,它其实就是方法指针:
type tmouseevent = procedure (sender: tobject; button: tmousebutton; shift: tshiftstate; x, y: integer) of object;