当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
2015年计算机二级VFP考试基础教程(37)
发布时间:2010/11/30 16:30:46 来源:城市学习网 编辑:ziteng
 5.6 命令按钮和命令按钮组

  一。命令按钮(commandbutton):通常用来完成某些功能,例如确认,撤认,执行,完成等操作。

  二。命令按钮组(commandgroup):当一个表单需要多个命令按钮时,可以使用命令按钮组,这样可使事件代码更简洁,界面更加整洁和美观。命令按钮组中各命令按钮的排列方向和位置可根据用户的需要进行调整,操作的步骤如下:

  1.单击选中表单中的命令按钮组。

  2.右击命令按钮组,在快捷菜单中选择"编辑"命令。

  3.选中命令按钮后,根据需要进行相关操作(也可在"属性"窗口的对象选择列表框中直接选择命令按钮组中各个命令按钮)

  三。命令按钮(组)的常用属性:见下表:

属性
功能
caption 标题文本.含"\<"字符,输入该字符可选择该命令按钮
picture 标题图像
default 为.T.时,按回车键可选择此命令按钮
cancel 为.T.时,按esc键可选择此命令按钮
value 命令按钮组中被选中的命令按钮的序号
buttoncount 命令按钮组中的命令按钮的个数

  四。制作一个表单,添加三个命令按钮command1~command3,练习设置其属性,按图20依次设置其属性

 
1.选中command1,在"属性"窗口中中选中caption属性,在上方文本框中输入"确定",如图21

  2.选中command2,在"属性"窗口中中选中caption属性,在上方文本框中输入"\

 
  并将其cancel属性设为。t.,则在运行时,单击该按钮,按C键或按ESC键,均可执行此按钮的click事件代码。
  3.选中command3,在"属性"窗口中中双击其picture属性,在弹出的对话框中选择"d:\vfp98\fox.bmp"即可。
  五。例一:将xggz表单(制作方法见本章第二节)中的各个命令按钮换成命令按钮,对比使用方法。
  1.打开xggz.scx,将原来的几个命令按钮删除,在原来的位置添加一个命令按钮组 [NextPage]  2.按下表设置命令按钮组commandgroup1的属性:
对象 属性名 属性值
commandgroup1 buttoncount 5
commandgroup1 auotsize .T.
command1 caption 第一个
command2 caption 上一个
command3 caption 下一个
command4 caption 最后一个
command5 caption 退出
  3.编写代码:命令按钮组commandgroup1的click事件代码如下:
  sel=this.value &&变量sel用于命令按钮组中被选中的命令按钮的序号(即运行时被单击的)
  do case
  case sel=1
  go top
  case sel=2
  if !bof()
  skip -1
  endif
  case sel=3
  if !eof()
  skip
  endif
  case sel=4
  go bottom
  case sel=5
  thisform.release
  endcase
  thisform.refresh
 六。例二:按人员编号增删改"工资情况表的数据
  1.设计表单的界面:新建表单→打开数据环境→将"工资情况"表添加到数据环境中→从数据环境中,拖动"工资情况"表的所有字段到表单中,并添加文本框 text1用于输入定位人员的编号,添加"定位"(command1),"追加"(command2)和"删除"(command3)三个命令按钮,界面如图24所示,并将文本框text1的inputmark属性设为99999
  2.编写代码:
  *"定位"按钮的click事件代码:
  bh=alltrim(thisform.text1.value)
  jlh=recno()
  locate for 编号=bh
  if eof()
  go jlh
  =messagebox("没有找到该编号!")
  else
  thisform.refresh
  endif
  *"追加"按钮的click事件代码:
  append blank
  thisform.refresh
  *"删除"按钮的click事件代码:
  yn=messagebox("是否要删除?",4+32)
  if yn=6
  delete
  if eof()
  go top
  else
  skip
  endif
  thisform.refresh
  endif
  3.可进一步考虑问题:怎样实现在文本框text1中输完编号,回车即进行查找?
  可在text1的valid事件加入如下代码:
  if !empty(this.value)
  thisform.command1.click &&调用命令按钮"查找"(即command1)的click事件代码,进行查找
  else
  return .f.
  endif
广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved