22.1.2 使用GroupBox控件
我们可以使用GroupBox控件把其他控件收集到组内。GroupBox控件还将以直线型边界画出控件组的轮廓。如果愿意,我们也可以给控件组添加标签。Lotto彩票记录由1~49中间6个不同的数组成,因此需要分组将显示这些数字的控件。通过在Toolbox窗口中单击GroupBox控件,然后在Lotto选项卡中单击,给Lotto选项卡添加一个GroupBox控件。然后,可以把该控件的Text、(Name)和Dock属性值修改成如图22-7所示的值。
Text属性值指出在Lotto选项卡上显示的这支彩票的可能值范围。Dock属性的值使该GroupBox控件充满包含它的容器-- 即选项卡控件上的Lotto选项卡。(Name)属性值决定着Form1类中标识该控件的变量的名称。
Euromillions选项卡上的彩票记录包括两组数值,第一组由1~50中间5个不同的数值组成,第二组由1~9中间两个不同的"星"值组成。第一组中的数值可以与这两个"星"值相同。在Euromillions选项卡中要使用另一个容器,因此在Toolbox窗口中单击Containers组中的SplitContainer,然后在Euromillions选项卡中单击,把SplitContainer控件放入其中。要选择某个选项卡,应首先单击选项卡控件顶部该选项卡的标签,该动作将选中选项卡控件,而单击的标签将醒目显示;然后在选项卡的显示区域内单击,即可选中选项卡控件内醒目显示的选项卡。SplitContainer控件的Dock属性值默认是Fill,因此该控件应该充满Euromillions选项卡。SplitContainer控件有两个各自可以包含其他控件的窗格。可以拖动这两个窗格之间的分隔线,以调整它们的相对大小。
显示该控件的Properties窗口,并像图22-8中所显示的那样设置Orientation和(Name)属性。
|
| (点击查看大图)图 22-7 |
|
| (点击查看大图)图 22-7 |
两个窗格现在应该由水平的分隔线分开。拖动该分隔线,使下窗格的高度大约是上窗格高度的一半。然后,把该控件的IsSplitterFixed属性值设置为True-- 如图22-8所示,使分隔线固定在我们设定的位置。如果我们保留IsSplitterFixed属性值为False,则应用程序执行时用户可以将该分隔线拖动到任意位置。
我们可以使用GroupBox控件,组合SplitContainer控件中各个窗格的内容,因此给每个窗格添加一个GroupBox控件。将上窗格中GroupBox控件的Text、(Name)和Dock属性值分别设置为Values 1 to 50、euroValues和Fill,把下窗格中GroupBox控件的Text、(Name)和Dock属性值分别设置为Values 1 to 9、euroStars和Fill。Editor窗口应该如图22-9所示。
|
| (点击查看大图)图 22-9 |
我们现在实际上得到一个控件的层次结构。窗体的客户区包含选项卡控件,该选项卡控件上的Euromillions选项卡又包含SplitContainer控件,而SplitContainer控件中的各个窗格又包含GroupBox控件。下一步是给窗格中的各个GroupBox控件添加按钮。