Buttons 属性示例

下例创建一个选项组控制并在一个表单上设置该控制。选项组有三个按钮,根据用户单击的选项按钮,显示一个圆、椭圆或正方形。ButtonCount 属性用于指定选项组的按钮数,Buttons 和 Caption 属性用于指定显示在每一选项按钮旁的文本。

形状控制用于创建圆、椭圆和正方形。选项组控制的 Click 事件采用 DO CASE ... ENDCASE 结构,并在用户单击一个选项按钮时,Value 属性显示相应的形状。

frmMyForm = CREATEOBJECT('Form') && 创建一个表单
frmMyForm.Closable = .F. && 废止“控制”菜单框

frmMyForm.AddObject('cmdCommand1','cmdMyCmndBtn') && 添加命令按钮
frmMyForm.AddObject('opgOptionGroup1','opgMyOptGrp') && 添加选项组
frmMyForm.AddObject('shpCircle1','shpMyCircle') && 添加圆
frmMyForm.AddObject('shpEllipse1','shpMyEllipse') && 添加椭圆
frmMyForm.AddObject('shpSquare','shpMySquare') && 添加框

frmMyForm.cmdCommand1.Visible =.T. && “退出”命令按钮可视

frmMyForm.opgOptionGroup1.Buttons(1).Caption = "\<Circle"
frmMyForm.opgOptionGroup1.Buttons(2).Caption = "\<Ellipse"
frmMyForm.opgOptionGroup1.Buttons(3).Caption = "\<Square"
frmMyForm.opgOptionGroup1.SetAll("Width", 100) && 设置选项组宽度
frmMyForm.opgOptionGroup1.Visible = .T. && 选项组可见
frmMyForm.opgOptionGroup1.Click && 显示圆

frmMyForm.SHOW && 显示表单
READ EVENTS && 启动事件处理


DEFINE CLASS opgMyOptGrp AS OptionGroup && 创建一个选项组
ButtonCount = 3 && 三个选择按钮
Top = 10
Left = 10
Height = 75
Width = 100

PROCEDURE Click 
ThisForm.shpCircle1.Visible = .F. && 隐藏圆
ThisForm.shpEllipse1.Visible = .F. && 隐藏椭圆
ThisForm.shpSquare.Visible = .F. && 隐藏正方形

DO CASE
CASE ThisForm.opgOptionGroup1.Value = 1
ThisForm.shpCircle1.Visible = .T. && 显示圆
CASE ThisForm.opgOptionGroup1.Value = 2 
ThisForm.shpEllipse1.Visible = .T. && 显示椭圆
CASE ThisForm.opgOptionGroup1.Value = 3 
ThisForm.shpSquare.Visible = .T. && 显示正方形
ENDCASE
ENDDEFINE

DEFINE CLASS cmdMyCmndBtn AS CommandButton && 创建命令按钮
Caption = '\<Quit' && 命令按钮上的标题
Cancel = .T. && 默认“取消”命令按钮 (Esc)
Left = 125 && 命令按钮列
Top = 210 && 命令按钮行

Height = 25 && 命令按钮高度

PROCEDURE Click
CLEAR EVENTS && 终止事件处理,关闭表单
ENDDEFINE

DEFINE CLASS shpMyCircle AS SHAPE && 创建一个圆
Top = 10
Left = 200
Width = 100
Height = 100
Curvature = 99
BackColor = RGB(255,0,0) && 红色
ENDDEFINE

DEFINE CLASS shpMyEllipse AS SHAPE && 创建一个椭圆
Top = 35
Left = 200
Width = 100
Height = 50
Curvature = 99
BackColor = RGB(0,128,0) && 绿色
ENDDEFINE

DEFINE CLASS shpMySquare AS SHAPE && 创建一个正方形
Top = 10
Left = 200
Width = 100
Height = 100
Curvature = 0
BackColor = RGB(0,0,255) && 蓝色
ENDDEFINE