VB控件绘制经验点滴 罗玉元 2001年 42期 大家知道,VB中绘制控件的最基本方法是用鼠标左键在控件箱中单击要绘制的控件图标(使之成凹陷状),再将光标移到窗体上需要放置控件的部位,按住鼠标左键拖动到合适的大小后放开鼠标键即可。但这样每次只能绘制一个(绘制完成后,控件箱中该控件图标自动复原)。如要再绘制同一控件,必须再单击控件箱中该控件图标,很不方便。VB中提供了几种连续绘制的方法,一般入门教材叙述比较简略或未作介绍,现将其绘制步骤及特点分述如下,供初学者参考。   #11.在窗体(form)上连续绘制多个相同控件的几种方法及特点    方法一:先按住Ctrl键再单击控件图标,则只单击一次即可连续绘制同一控件(控件绘制完后,该控件图标仍呈凹陷状)。如要取消连续绘制,只要单击控件箱中的指针图标(或任意其它图标)即可恢复原始状态。这样绘制出来的控件标题(控件上显示的文字)和名称(即控件的name属性)都是按系统的默认名称和顺序递增的(如命令按钮为command1,command2……等)。    方法二:在控件箱中连续双击需要绘制的控件。每双击一次,则在窗体的正中增加一个该控件,控件的标题和名称与方法一同。但此时应注意,控件的大小均是系统的默认值,后增加的控件全部重叠在前次添加的控件上了(看起来只有一个,控件上只显示最后一个的标题),必须一个个拖动到所需要的位置上。   方法三:先在窗体上绘制一个控件,然后选中该控件,在窗体上单击鼠标右键,从弹出的对话框中选“复制”,再重复操作选 “粘贴”(也可选利用编辑菜单或工具图标进行“复制”与“粘贴”)。此时会弹出一个对话框,告诉你已经存在一个该控件名的控件,问是否创建一个控件数组,其中有“是(yes)”和“否(no)”两个按钮可供选择。   ●选“否”,则在窗体的左上角出现一个原控件的复制件,此时应注意其显示的标题均与原控件相同,但名称(name属性)不同(选中控件后在属性窗口查看,不管原控件名称是否采用默认值,复制件名称仍按默认值的序号递增)。   ●如选“是”,这样复制的任一控件都是控件数组的成员,它们具有相同的控件名,但其后用带括号的下标相区分,如 command1(0),command1(1)……等(系统默认下标从“0”开始递增)。此时所有控件的名称(name)属性均相同,只有index属性不同(分别为0、1、2……等,非控件数组的index属性无值)。若双击控件数组的任一成员进入代码窗口,则光标都在同一个控件名相同的click()事件内,编程时必须用带括号的下标区分对应的控件。   以上两种情况复制的控件均重叠在窗体的左上角,也须用鼠标拖到适合的位置。   #12.在容器控件中绘制其它控件的方法及应该注意的问题   VB中将可以放置其它控件的对象称为容器。除窗体(form)外,图片框(picture box)和框架(frame)都可作为容器。当向这些容器控件中绘制其它控件时,不能直接套用1中的三种方法,可采用以下两种形式:   ●先绘制出作为容器的控件,再采用基本方法,即在控件箱中点击需要放置的控件图标,将光标移到容器控件内拖动绘制。此时如要连续绘制多个相同控件,则可采用1中介绍的方法一和方法三。注意不能直接采用方法二,因双击控件图标的方法只能在窗体上绘制控件。   ●可以采用基本方法或1中任一种方法在窗体上绘制出要在容器控件中放置的控件,再绘制或选中容器控件,将窗体上已绘制好的控件复制到容器控件中。应特别注意不能采用拖动的方法将窗体上的控件拖放到容器控件中。   用以上两种形式绘制的控件用鼠标拖动时始终限制在容器控件内,并随着容器控件的移动而移动。这也可以检验容器控件中的控件是否属于该容器。