下面示例演示了如何在表单中用形状控制显示圆、椭圆或矩形。
示例中,首先创建一个表单,并且在表单上添加了一组选项按钮和一个命令按钮。当单击一个选项按钮时,相应的形状就显示在表单中。要显示一个形状控制,需设置 visible 属性为“真”(.t.);为显示另一个形状控制,原来的形状控制需设置为“假”(.f.),每个形状控制的 height、width 和 curvature 属性决定了所创建的形状(圆、椭圆或矩形)。
frmmyform = createobject('form') && 创建一个表单
frmmyform.closable = .f. && 废止控制菜单框
frmmyform.addobject('cmdcommand1','cmdmycmndbtn') && 添加命令按钮
frmmyform.addobject('opgoptiongroup1','opgmyoptgrp') && 添加选项组
frmmyform.addobject('shpcircle1','shpmycircle') && add 添加圆形
frmmyform.addobject('shpellipse1','shpmyellipse') && 添加椭圆
frmmyform.addobject('shpsquare','shpmysquare') && 添加矩形
frmmyform.cmdcommand1.visible =.t. && "quit" 命令按钮可见
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 && 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