3.按钮控件及类似控件
除了菜单以外,按钮是在应用程序中触发命令最常用的方式。C++Builder提供一些按钮控件及类似控件(见表2-4):
(1)按钮控件
用户单击按钮控件(Button)触发动作。在设计时双击按钮将跳至代码编辑器中该按钮的OnClick事件处理程序。
· 将Cancel属性设置为true,则当用户按下Esc键时,触发按钮的OnClick事件。
· 将Default属性设置为true,则当用户按下Enter键时,触发按钮的OnClick事件。
(2)位图按钮
位图按钮(BitBtn)是带有图形的按钮控件。
· 设置Glyph属性可为按钮选择一个位图。
· 使用Kind属性可自动配置一个带有图形的缺省按钮。
· 缺省时,图形出现在正文的左边。若要移动它,使用Layout属性。
· 按钮中的图形和文本会自动居中。使用Margin属性可移动它们的位置。Margin属性决定图形边缘和按钮边缘的像素点数。
· 缺省时,图形和文本间隔4个像素点。使用Spacing可增减该距离。
· 位图按钮有3种状态:弹起、按下、保持按下。将NumGlyphs属性设为3可显示每种状态的不同图形。
(3)快速按钮
快速(Speed)按钮(SpeedButton),通常带有图形,可加入组中。通常和面板一起用来创建工具栏。
· 为让快速按钮成组工作,可将所有按钮的GroupIndex属性值设置为相同的非零值。
· 缺省时,快速按钮以弹起(未选中)状态显示。若需开始就将快速按钮显示为选中状态,可将Down属性设为true。
若AllowAllUp属性值为true,在一个组中所有的快速按钮均为未选中状态。若AllowAllUp属性值为false,这组快速按钮以单选按钮组的模式工作。
(4)复选框
复选框(CheckBox)提供给用户两个或更多选择。
· 把Checked属性设为true,复选框中会出现记号表示选中状态。
· 将AllowGrayed设为true使复选框具有三种可能的状态:选中、非选中、灰的(不可选)。
· State属性指出复选框状态为选中(cbChecked)、非选中(cbUnchecked)、灰的(cbGrayed)。
(5)单选按钮
单选按钮(RadioButton)给出一组互斥的选项。可使用单个的单选按钮,也可使用RadioGroup组件,它自动安排成组的单选按钮。
(6)工具栏
工具栏(ToolBar)组件提供一种管理可视化控件的简易方法。你可以用面板组件和快速按钮创建工具栏,也可使用工具栏组件,然后右击并选择NewButton来把按钮加到工具栏上。工具栏组件有许多优点:
工具栏自动保持按钮的外观和间隔;
其他控件保持其相对位置和高度;
若水平工具栏放不下时,控件能自动转至新行的开始;工具栏提供了一些显示选项,如透明度、弹出边界,对分组控件还提供空格
和分隔符。
(7)酷栏
酷栏(CoolBar)包含独立的可移动和调整大小的子控件。各控件属于单独的段。用户通过段左边的尺寸位置调整柄可定位控件。
在设计时和运行时,酷栏都需要版本4.70或以后的COMCTL32.DLL(通常位于Windows\\System或者Windows\\System32目录下)。
· Bands属性存放一组TCoolBand对象。在设计时,你可用段编辑器加入、删除或修改段。打开段编辑器,在对象观察器中选择Bands属性,然后双击右边的Value列,或单击省略号(...)按钮。也可以通过加入新的窗口控件以生成新的段。
· FixedOrder属性决定用户是否能对段重新排序。
· FixedSize属性确定段是否要保持一致的高度。