vf表单控件的使用说明
- 格式:doc
- 大小:96.50 KB
- 文档页数:9
一、标签标签能够显示多个字符构成的文本,用于设计表单上所需的文字性提示信息。
标签和大多数控件的不同点在于运行表单时不能用《tab》键来选择标签。
常用的标签属性及其作用如下。
1、Caption:确定标签处显示的文本。
2、Visible:设置标签可见还是隐藏。
3、AutoSize:确定是否根据标签上显示文本的长度,自动调整标签大小。
4、BackStyle:确定标签是否透明。
5、WordWrap:确定标签上显示的文本能否换行。
6、FontSize:确定标签上显示文本所采用的字号。
7、FontName:确定标签上显示文本所采用的字体。
8、ForeColor:确定标签上显示的文本颜色。
二、命令按钮和命令按钮组在各种窗口或对话框中几乎都要使用一个或多个命令按钮。
一旦用户单击一个命令按钮,就可实现某种规定的操作。
例如,各种对话框中的“确定”按钮,当用户单击时将结束对话框的操作。
VisualForPro中的命令按钮控件同样用于完成特定的操作。
操作的代码通常放在命令按钮的“单击”事件(即Click Event)代码中。
这样,运行表单时,当用户单击命令按钮时便会执行Click事件代码。
如果在表单运行中,某个命令按钮获得了焦点(这时,这个命令按钮上会比其他命令按钮多一个线框),则当用户按下《Enter》键或空格键时,也会执行这个命令按钮的Click时间代码。
常用的命令按钮属性及其作用如下:1、Caption:设置在按钮上显示的文本。
2、Default:在表单运行中,当命令按钮以外的某些控件(如文本框)获得焦点时,若用户按下《Enter》键,将执行Default属性值为.T.的那个命令按钮的click事件代码。
3、Cancel:如果设置该属性值为.T.,则当用户按下<Esc>键时,将执行命令按钮的click事件的代码。
4、Enabled:指明按钮是否失效,即是否被选择。
当Enabled属性值为.f.时,用户无法选择该按钮。
第六章表单的创建与使用6.1 面向对象程序设计概述1. 基本概念 P161-165面向对象的程序设计是通过对类、子类和对象等的设计来体现的,类是面向对象程序设计技术的核心。
类:定义了对象特征以及对象外观和行为的模板。
类的特征:1)封装性:隐藏了类中对象的内部数据或操作细节,只看到外表信息。
2)继承性:任何类都可以从其它已有的类中派生,新类保持了父类中的行为和属性,但增加了新的功能。
体现了面向对象设计方法的共享机制。
3)多态性:相同的操作可作用于多种类型的对象上,并获得不同的结果。
4)抽象性:提取一个类或对象与众不同的特征,而不对该类或对象的所有信息进行处理。
基类:系统本身提供的类称为基类。
基类包括容器类和控件类。
容器类是其他对象的集合,如表格、选项按钮组;控件类是单一的对象,不包含其他对象,如命令按钮、文本框。
子类:以其他类定义为起点,对某一对象所建立的新类。
新类将继承任何对父类所做的修改。
类库:存储类的文件,每一个以可视方式设计的类都存储在一个类库中。
类库文件的扩展名为 .VCX 。
P216对象:是类的一个实例,包括了数据和过程。
具有所在类所定义的全部属性和方法。
VFP有两种对象:容器对象和控件对象。
属性:控件、字段或数据库对象的特性。
事件:由对象识别的一个动作。
方法:与对象相联系的由程序执行的一个处理过程,即处理事件的一组代码。
用户不可以为对象创建新的事件,但可以创建新的方法程序。
2. Visual FoxPro 基类 P166从下述 Visual FoxPro 基类中,可以派生子类或创建对象。
容器命令组控件微调标签表单命令按钮复选框OLE 容器控制线条表单集选项组列表框OLE 绑定型控制分隔符 # 表格选项按钮 # 文本框自定义形状标头 # 页框组合框工具栏图象列 # 页面 # 编辑框计时器注:# 这些类是父容器的集成部分,在类设计器中不能子类化。
基类事件的最小集合 P167事件说明Init 当对象创建时激活。
vfp表单中表格控件使用
在VFP(Visual FoxPro)表单中使用表格控件可以方便地显示和编辑数据。
以下是在VFP表单中使用表格控件的一般步骤:
1. 打开VFP并创建新表单。
2. 在表单设计器中选择表格控件工具。
3. 在表单上绘制表格控件的大小和位置。
4. 双击表格控件,进入编辑模式。
5. 选择要显示的数据源(如数据库表或数组等)。
6. 根据需求调整表格的列数、列宽和列标题等属性。
7. 设置表格控件的其他属性,如是否可编辑、是否显示行号等。
8. 编写相关的VFP代码来处理表格控件的事件,例如在选择
行或编辑单元格时触发的事件。
9. 运行表单,查看和测试表格控件的功能。
在使用表格控件时,还可以通过编写代码来动态地添加、删除、更新和过滤表格中的数据,并对表格控件进行排序和分页等操作。
除了基本的显示和编辑数据外,VFP表格控件还可以支持更
复杂的功能,如合并单元格、显示图标或图像、设置条件格式等。
总之,使用表格控件可以方便地在VFP表单中展示和操作数据,提高用户界面的友好性和功能性。
第十章常用的表单控件VFP在面向对象开发环境中,是通过在表单上放置控件来完成信息的输入设计工作的。
在设计表单时可以使用两类控件:与表中数据捆绑的控件和不与数据捆绑的控件。
所谓捆绑控件是指当输入或选择的值要保存或者被引用时,就需为该控件设置一个数据源,数据源可以是表中的字段或变量。
对于数据源是变量或字段的控件,则需要设置控件的ControlSource 属性;若数据源是整个表中的数据,则需要设置RecordSource属性。
而非捆绑控件则不与数据源直接捆绑。
10.1 标签控件(Label)标签控件:它是一个显示文本图形的控件,在设计时可以直接修改其中的文本,标签具有自己的一套属性、事件和方法,能够响应绝大多数鼠标事件,可以在运行时动态地改变标签文本。
可以使用TabIndex属性为标签指定一个Tab次序,但标签并不能获得焦点,而是将焦点传递给Tab 键次序中紧跟着标签的下一个控件。
常用的标签属性:①Caption属性用于指定标签的标题文本,最多可包含的字符数量为256。
标签文本显示在屏幕上以帮助用户识别各个对象。
用户在产生表单或控件对象时,系统给予对象的Caption属性值和Name属性值是相同的,此时用户应特别注意它们的区别。
用户在为控件设置Caption属性时,可以将其中的某个字符作为热键,方法是在该字符前插入一个反斜杠(\)和一个小于号(<)。
②AutoSize属性该属性用于确定是否根据标题的长度来调整标签的大小。
③Alignment属性该属性指定标题文本在控件中显示时的对齐方式。
对于不同的控件,该属性的设置是有区别的。
对于标签,该属性的设置值如下表所示。
设置值说明0(默认值)左对齐,文本显示在区域的左边1右对齐,文本显示在区域的右边2中央对齐,将文本居中排放,使左右两边的空白相等④BackStyle属性该属性用于确定标签是否透明。
当标签控件完全处于另一个控件的上方时,标签将遮住下方的控件,此时若标签控件的BackStyle属性设置为0,则下方的控件将透过标签显示出来。
标签(Label)控件可以编写代码来改变Label控件显示的文本,以响应运行时的事件。
例如,如果一个应用程序要几分钟时间作改动,则可以显示Label 中的进程状态信息。
还可以使用Label 来标识控件,例如TextBox控件没有自己的Caption属性,这时就可以使用Label 来标识这个控件。
在Label控件中定义访问键时,就可以按ALT + 设定的字符来把焦点移动到TAB 键顺序中的下一个控件。
常用的标签属性•Caption属性当创建一个新的对象时,其缺省标题为缺省的Name 属性设置。
该缺省标题包括对象名和一个整数,如Command1 或Form1。
为了获得一个描述更清楚的标签,应对Caption 属性进行设置。
可以使用Caption属性赋予控件一个访问键。
在标题中,在想要指定为访问键的字符前加一个(\<) 符号。
比如,下面代码在为标签设置Caption属性的同时,指定了一个访问键“x”:ThisForm.MyLabel.Caption="选择项目(\<X)"对于一般控件,按下相应的访问键,将激活该控件,使该控件获得焦点。
而对于标签,按下相应的访问键,将把焦点传递给tab键次序中紧跟着标签的下一个控件。
比如,在某个列表框的上方放置一个标签,并把列表框的Tab键次序安排在标签之后,这样,按下标签访问键时,其下方的列表获得焦点。
访问键的使用方法受KEYCOMP设置(DOS或WINDOWS)的影响。
在当前表单激活的情况下,访问键的使用方法如表所示。
•Label 控件标题的大小没有限制。
对于窗体和所有别的有标题的控件,标题大小的限制是255 个字符。
提示对于标签来说,将AutoSize 属性设为True 自动调整控件的大小以与其标题相适合。
•Alignment属性指定的标题文本在控件中显示的对齐方式语法object.Alignment [= number],该属性的设置值如表所述。
VFP6表单及控件属性总结VFP6表单及控件属性一览表Activate Event 当表单集、表单或页对象激活时、或显示工具栏对象时发生。
ActiveControl 引用一个对象上的活动控件。
ActiveForm 引用表单集或_SCREEN对象中的活动表单对象。
Addobject 在运行时向容器对象中添加一个对象。
AddProperty 向对象添加新属性。
Alignment 控件上正文水平对齐方式。
AlwaysOnBottom 防止其他窗口被表单窗口覆盖。
AlwaysOnTop 防止其他窗口遮挡表单。
Autocenter 指定Form对象在首次显示时,是否自动在VFP主窗口内居中。
AutoSize 控件是否根据正文自动调整大小。
BackColor 指定对象内文本和图形的背景色。
BackStyle 设置背景风格。
BaseClass 指定VFP基类的类名,被引用对象由此基类派生得到。
BorderStyle 指定对象的边框样式。
Box 在表单对象上绘制矩形。
BufferMode 指定记录是保守式更新还是开放式更新。
Caption 指定对象标题文本。
Circle 在表单上绘制圆或弧。
Class 返回派生对象的类的类名。
ClassLibrary 指定用户自定义类库的文件名,该类库包含对象的类。
Click Event 当用户在一个对象上按下并释放鼠标按钮时,或用编程方式触发该事件时发生ClipControls 指定在Paint事件中,图形方法程序是否会重画整个对象,并且是否创建将非图形控件排除在外的剪切区域。
Closable 指定能否通过双击窗口菜单图标来关闭表单。
Cls 清除表单中的图形和文本。
Color Source 指定控件颜色的设置方式。
Comment 存储对象的有关信息。
ContinuousScroll 指定表单是平滑地滚动还是只在释放滚动框后才重绘。
ControlBox 指定在运行时刻表单或工具栏的左上角是否显示菜单图标。
表单控件操作补充1、复选框和选项组效果如下:步骤如下:(1)新建一个表单,Autocenter为.T.(2)向表单中添加一个标签Label1、一个选项按钮组OptionGroup1及两个复选框Check1、Check2,如1-1所示:(3)右击选项按钮组件,在弹出的快捷菜单中选择“生成器”,修改按键数为3,并分别将Option1、Option2、Option3的Caption设为红绿蓝。
(4)将Check1的Caption属性设为“粗体”、Check2的Caption属性设为“斜体”,Label 的Caption属性设为“欢迎使用学生管理系统”,并将Label的Autosize属性设为.T.(5)编写代码分析:标签的Fontbold和Fontitalic属性,即“加粗”和“倾斜”属性,这两个属性都有两个值--.T. 和.F.;而复选框的Value属性也有.T. 和.F.两个值,选中时为.T.,否则为.F.。
本例巧妙地利用这个特点。
A.Check1的Click事件bel1.fontbold=thisform.check1.valueB. B. Check2的Click事件bel1.fontitalic=thisform.check2.valueC.单选按钮Option1的Click事件bel1.forecolor=RGB(255,0,0)单选按钮Option2的Click事件bel1.forecolor=RGB(0,255,0)单选按钮Option3的Click事件bel1.forecolor=RGB(0,0,255)(6)保存并运行2、列表框和命令组效果如下步骤如下:(1)新建一个表单,将表单的Caption属性设为“列表框和命令组”,Autocenter为.T.;将列表框List1的MoverBars属性设为.T.(2)向表单中添加一个文本框Text1、一个命令按钮组CommandGroup1,两个命令按钮的Caption属性依次为“加入”、“移出”,一个列表框List1:(3)编写代码命令组中Command1(即加入按钮)的Click事件st=thisform.text1.valueif !empty(st)no=.t.for i=1 to thisform.list1.listcountif thisform.list1.list(i)=stno=.f.endifnext iif nothisform.list1.additem(st)thisform.refreshendifendif命令组中Command2(即移出按钮)的Click事件if thisform.list1.listindex>0thisform.list1.removeitem(thisform.list1.listindex)endif列表框 List1的Init事件thisform.list1.additem("你好")thisform.list1.additem("昆明")thisform.list1.additem("欢迎您")列表框 List1的DBclick事件mand2.click()(4)保存表单并运行3、表格和组合框效果如下:步骤:(1)新建一个表单,将其Caption属性设为“表格和组合框”,Autocenter为.T.;(2)向表单中添加两个标签控件,将它们的Caption属性分别设为“班级”和“性别”,然后在两个标签控件后分别添加两个组合框控件Combo1和Combo2,如下图所示(3)右击表单空白处,在弹出的快捷菜单中选择“数据环境”命令,将表“Student.dbf”添加到表单的数据环境中,如下图所示:(4)向表单中添加一个表格控件,右击表格,在弹出的快捷菜单中选择“生成器”命令,可以启动“表格生成器”窗口,如下图所示:(5)选中组合框Combo1,在“属性”窗口中将其 RowSourceType属性改为“1—值”,在选中RowSource属性,在上方文本框中输入值:“95031,95033”,如下图所示(6)用同样的方法,将Combo2的RowSourceType属性改为“1—值”,在选中RowSource 属性,在上方文本框中输入值:“男,女”。
Visual FoxPro 6.0 表单及控件简介目录一、表单1、建立、编辑、调用和关闭表单2、表单的常用布局属性3、表单的常用方法程序4、表单的自定义方法程序5、为表单贴背景图二、控件1、命令按钮组控件(Commandgroup)2、标签控件(Label)3、选项按钮组控件(Optiongroup)4、复选框控件(Check)5、微调控件(Spinner)6、文本框控件(Text)7、线条控件(Line)8、形状控件(Shape)9、编辑框控件(Edit)10、组合框控件(Combo)11、表格控件(Grid)12、计时器控件(Timer)13、列表框控件(List)14、容器控件(Container)15、页框(Pageframe)三、电子显示牌的设计1、电子显示牌的表单、形状、标签、计时器属性设定2、计时器的Time方法程序代码四、进度条的设计1、设置进度条的最小值、最大值和初值2、修改(累加)进度条的初值3、控制进度条的代码设计五、颜色淡入淡出的设计1、颜色代码的种类2、用计时器控制对象的颜色变化一、表单1、建立、编辑、调用和关闭表单VFP的每个表单有两个磁盘文件,即*.SCX和*.SCT,前者为表单库文件,后者为表单备注文件。
可用 USE命令带扩展名打开*.SCX库文件,其中有23个字段,一般不要修改。
表单设计器直接操作的是*.SCX表单库文件。
对表单文件改名时,一定要同时修改该表单的两个文件名,否则表单文件打不开。
一般可在编辑表单时利用[文件]菜单项的“另存为”功能进行,系统会自动生成两个新的同名表单文件。
(1)建立表单。
在VFP主窗口的[文件]菜单项,点击[新建],在[新建]对话框点击[表单]、[新建文件],即进入表单设计器状态。
(2)编辑表单。
在VFP主窗口的[文件]菜单项,点击[打开],在[打开]对活框选择文件类型[表单(*.SCX)],然后从中点击一个表单文件,点击[确定],进入表单设计器状态。
1用“表向导”创建表的操作步骤:1).选择【文件】| 【新建】,打开“新建”对话框,在“文件类型”中选【表】|【向导】,打开,打开“表向导”对话框。
2)进入【表向导】步骤“1字段选取框”中,在“样表”中选表,若无表可选可用【加入】按钮将需要的表加到样表列表框中;从“可用字段”中将需要的字段移到“选定字段”列表框中。
3)单击“下一步”,进入【表向导】步骤“1a选数据库”3)单击“下一步”,进入步骤“2修改字段设置”,此时可对所在创建的表字段定义进行修改4)单击“下一步”,进入步骤“3为表建索引”,为表选出关键字和索引字段5) 单击“下一步”,进入步骤“4完成”,选择一种保存表的选项,单击“完成”按钮,打开“另存”对话框,选定保存位置,输入表文件名。
此时完成了用向导创建表的过程。
2.使用“查询向导”创建查询的操作步骤:1〉进入“查询向导”,在“项目管理器”中,选择“数据”选项卡,选中“查询”,单击“新建”按钮,出现“新建查询”对话框,单击“查询向导”按钮,打开“向导选取”对话框。
2〉在“向导选取”对话框中,选择“查询向导”,再单击“确定”按钮,出现“字段选取”对话框3〉在“字段选取”对话框中,选择查询结果中需要的字段。
单击“下一步”按钮,出现“筛选记录”对话框。
4〉在“筛选记录”对话框中,设置查询条件。
条件输入结束后,单击“下一步”按钮,出现“排序记录”对话框。
5〉在“排序记录”对话框中,选择排序字段。
单击“下一步”按钮,出现“限制记录”对话框。
6〉在“限制记录”对话框中,确定查询结果中所包含的记录数。
限制记录结束后,单击“下一步”按钮,出现“完成”对话框。
7〉在“完成”对话框中选择保存查询设置的类型,保存查询。
3用“表设计器”创建表的操作步骤:1) 指定表名及保存位置。
选定【文件】菜单|【新建】按钮打开“新建“对话框,在“新建”对话框文件类型中,选【表】| 【新建文件】,打开“创建”对话框,选定保存位置,输入表文件名,可以不输入扩展名,系统会自动加上扩展名.dbf,单击“保存”按钮。
VF表单与控件设计例子1:用表单向导创建一个学生表单(表单中数据来自一个表)这个表单的功能是对学生信息浏览,添加,删除,查找,打印,编辑,退出。
一、创建(1)(2)(3)(4)①②(5)(6)(7)二、运行(1)①①②①②④③(2)①效果:例子2:用一对多表单向导创建一个学生-成绩表单,(表单中数据来自多个表)这个表单的功能是浏览,添加,删除,查找,打印,编辑,退出,浏览一个学生信息和他对应的选课信息。
一、创建(1)(2)(3)(4)①②(5)(6)①②(7)(8)(9)二、运行(1)①①②①②④③(2)①效果:例子3:用表设计器创建一个学生表单(表单中数据来自一个表)这个表单的功能是浏览和修改学生表中的记录。
一、创建(1)(2)说明:(3)单击右键,在弹出菜单中点击数据环境标签 编辑框 命令按钮组复选框 列表框 表格 计时器 ActiveX 控件线条容器 超级链接 生成器锁定选定对象 文本框 命令按钮 命令按钮组 选项按钮组 微调控件 图像页框ActiveX 绑定控件 形状 分隔符 按钮锁定查看类 表单上所有对象名称列表属性名属性值属性值编辑框(4)添加表进入数据环境②③①(5)将表或其中字段直接拖到表单上,字段生成(标签+文本框),表生成(表格)表格拖动字段拖动(5-1)全部拖动之后,选中表格,单击右键,在弹出菜单中点击编辑,表格对象处于被绿框选定的编辑状态,调整表格列宽。
(6)添加命令按钮控件和命令按钮组添加命令按钮控件分3步:①②1、在表单上画出命令按钮①在表单控件工具栏上选择命令按钮控件②在表单合适的位置拖动鼠标画出一个命令按钮2、在属性窗口中对命令按钮的属性进行设置。
选中某个属性项,在上面的编辑框内输入属性值3、Command1的Click事件代码编写如下(双击命令按钮对象,弹出代码框,注意左边的对象列表框要选Command1;右边的事件过程列表框要选Click,下面是代码编辑)添加命令按钮组1、在表单上画出命令按钮组①在表单控件工具栏上选择命令按钮组控件②在表单合适的位置拖动鼠标画出一个命令按钮组③选中命令按钮组对象,单击右键,在弹出菜单中选生成器④在生成器中设置按钮组中按钮的个数(微调按钮)和⑤排列和⑥名称①②③④⑤⑥2、在属性窗口中对命令按钮的属性进行设置。
一、标签标签能够显示多个字符构成的文本,用于设计表单上所需的文字性提示信息。
标签和大多数控件的不同点在于运行表单时不能用《tab》键来选择标签。
常用的标签属性及其作用如下。
1、Caption:确定标签处显示的文本。
2、Visible:设置标签可见还是隐藏。
3、AutoSize:确定是否根据标签上显示文本的长度,自动调整标签大小。
4、BackStyle:确定标签是否透明。
5、WordWrap:确定标签上显示的文本能否换行。
6、FontSize:确定标签上显示文本所采用的字号。
7、FontName:确定标签上显示文本所采用的字体。
8、ForeColor:确定标签上显示的文本颜色。
二、命令按钮和命令按钮组在各种窗口或对话框中几乎都要使用一个或多个命令按钮。
一旦用户单击一个命令按钮,就可实现某种规定的操作。
例如,各种对话框中的“确定”按钮,当用户单击时将结束对话框的操作。
VisualForPro中的命令按钮控件同样用于完成特定的操作。
操作的代码通常放在命令按钮的“单击”事件(即Click Event)代码中。
这样,运行表单时,当用户单击命令按钮时便会执行Click事件代码。
如果在表单运行中,某个命令按钮获得了焦点(这时,这个命令按钮上会比其他命令按钮多一个线框),则当用户按下《Enter》键或空格键时,也会执行这个命令按钮的Click时间代码。
常用的命令按钮属性及其作用如下:1、Caption:设置在按钮上显示的文本。
2、Default:在表单运行中,当命令按钮以外的某些控件(如文本框)获得焦点时,若用户按下《Enter》键,将执行Default属性值为.T.的那个命令按钮的click事件代码。
3、Cancel:如果设置该属性值为.T.,则当用户按下<Esc>键时,将执行命令按钮的click事件的代码。
4、Enabled:指明按钮是否失效,即是否被选择。
当Enabled属性值为.f.时,用户无法选择该按钮。
5、DisabledPicture:指定按钮失效时在按钮上显示的.bmp文件。
6、DownPicture:指定在按钮按下时按钮上显示的.bmp文件。
7、Visible:指明按钮是否可见。
8、Picture:指明显示在按钮上的.bmp文件。
命令按钮组时一组命令按钮,是容器对象。
使用命令按钮组便于对一组命令按钮进行统一操作和设置。
命令按钮组的ButtonCount属性值,决定组中命令按钮的个数。
表单运行时,当用户单击组中某个命令按钮时,命令按钮组的Value属性可以返回所单击按钮的序号。
若要单独设置组中的某个命令按钮的属性,可以使用命令按钮组的快捷菜单中的“编辑”命令选择某个按钮,在“属性”窗口中设置其属性。
若为组中某个按钮的Click事件写了代码,当单击这个按钮时,将执行该按钮的Click事件代码而不是组的Click事件代码。
三、选项按钮组选项按钮组是常用的一种控件,用在各种对话框中,让用户从给定几个操作中选择一个。
例如“文件”菜单中“新建”菜单项打开“新建”对话框,该对话框中有一个标题为“文件类型”的选项按钮组,让用户选择建立哪一种类型的文件。
选项按钮组是包含若干选项按钮的容器。
一个选项按钮组中默认包含两个选项按钮。
改变组的ButtonCount属性可以设置选项按钮数目。
如果设计表单时不设置value属性值,即在默认情况下,该属性值是1(默认选定第一个按钮)。
运行表单时,value属性值能够返回用户所选定的按钮的序号。
如果在运行表单之前将vaule属性改变为超出按钮序号的数值,则运行表单时只有在用户做了选择后,Value属性返回被选中的选项按钮的标题。
若把组的ControlSource属性设置为某个表或视图的一个字段,在运行表单时就可以将用户的选择保存到当前记录该字段中。
如果该字段是一个数值型字段,则保存选定按钮的序号。
如果该字段是一个字符型字段,则当用户做了选择后,被选中选项按钮的标题将保存到字段中。
除了上述属性之外,选项按钮组还有以下常用的属性、事件和方法。
1、Name属性:选项按钮组的对象名。
2、Enabled属性:当该属性值为.f.时,选项按钮组不响应用户引发的事件,即废止选项按钮组。
3、DisabledForeColor和DisabledBackColor属性:指定选项按钮组被废止时的显示颜色。
4、SetAll方法:设置组中所有按钮的属性。
例如,要将表单中名为Myopg的选项按钮组中所有按钮设置为无效(即不可用),可在该组的init事件代码中使用代码行:THIS.SetAll(“Enable”,.f.,”OptionButton”)。
5、Button属性:用于保存组中所有按钮的一个数组。
例如,Myopg.Buttons(2)代表名为Myopg的选项按钮组中的第二个按钮。
还可以设置选项按钮组中的单个选项按钮的属性,方法是从选项按钮组的快捷菜单中选择”编辑”命令,用鼠标选择某一个按钮,且在”属性”窗口中设置它的属性。
单个选项按钮的ControlSource属性不能是一个字符型字段,否则当运行表单时Visual Fox Pro 就会报告数据类型不匹配。
如果选项属性不能是一个字符型字段,将根据按钮是否被选中,在字段中写入0或1。
如果该字段是逻辑型的,则根据按钮是否被选中,在字段中写入.t.或.f.。
如果记录指针在表中移动,则用当前记录该字段的值自动更新选项按钮的值,设置某个选项按钮的Caption属性,可以改变该按钮的标题。
设置选项按钮组的最简便的方法是使用按钮选项组生成器,如下图,其中有三个选项卡:1、“按钮”选项卡用于输入按钮的个数以及各个按钮的标题;2、“布局”选项卡用于选择按钮排列的格局;3、“值”选项卡用于设置组的ControlSource属性。
四、复选框使用复选框可让用户给出对某个问题的回答,答案通常是两个,即“是”和“否”。
常用的复选框属性是Value和ControlSource。
Value属性值决定复选框有三种可能的状态。
反过来,运行表单时用户对复选框所设置的状态也决定了Value属性将获得的值。
1、0或.f.,复选框呈清除(也称未选中)状态。
2、1或.t.,复选框呈选中状态。
3、2或.Null.,复选框呈灰色状态。
当复选框获得焦点时,只要用户按<Ctrl>+<0>,就在选框中输入了.Null.,使复选框显示灰色。
可将复选框的ControlSource属性设置为某个表中的逻辑型或数值型字段。
在运行表单时,当逻辑型字段的当前值是.Null.值、。
.t.或.f.时,复选框将分别显示为灰色、被选中或清除状态;当数值字段的当前值为0,1或2(以及.Null.值)时,将分别使复选框显示为清除、选中或灰色状态。
并且,用户对复选框状态的改变将修改字段的当前值。
五、微调微调常用在给定数值范围以及数值间距的情况下,让用户从数值范围内通过上调或下调操作选择一个值或间接在微调框中输入值。
直接在微调框中输入的值应是一个数值。
数值范围和数值间距都可以是整数或小数。
常用的微调属性和事件如下。
1、keyboardhighvalue属性:指定用户能输入到微调框中的最高值。
2、keyboardlowvalue属性:指定用户能输入到微调框中的最低值。
3、spinnerhighvalue属性:指定当用户单击向上按钮时微调控件显示的最高值。
4、spinnerlowvalue属性:指定当用户单击向下按钮时微调控件显示的最低值。
5、increment属性:用户每次单击向上或向下按钮时增加或减少的值(即数值间距)。
6、value属性:返回用户输入的值。
7、SelectOnEntry属性:当微调得到焦点时,是否自动选中框中的数值。
8、UpClick事件:用户单击向上按钮时响应的事件。
9、DownClick事件:用户单击向下按钮时响应的事件。
六、文本框文本框也是最常用的控件,使用文本框能够进行多种类型数据的输入和输出。
文本框中的数据可以是数值、字符、日期或逻辑型的。
设计表单时,对文本框Value属性的设置决定了运行表单时在文本框中显示的数据的值和类型。
如果设计表单时未设置Value属性值,则运行表单时默认输入的是字符型数据。
表单上文本框控件的长度限制了输入到文本框中的字符型数据或数值型数据的长度及大小。
在文本框中输入的字符型数据或数值型数据的最大长度和大小还受相应数据类型的限制。
运行表单时,当文本框获得焦点时用户就可修改数据;当移走焦点或按下<enter>键就结束数据的输入,对文本框数据的修改将改变Value属性值。
文本框的主要应用是对表中非备注字段中的数据进行显示和编辑,这需要将文本框的ControlSource属性设置成表的某个字段。
运行表单时,文本框显示当前记录的ControlSource属性所指定的字段的数据,并将用户修改后的数据保存到字段中,同时将改变文本框的Value属性值。
可以控制向文本框中输入数据的格式。
如果是字符型数据,可用InputMark属性设置对输入字符的限制,例如,将InputMask属性设置为999,999.99可限制用户在输入时只能向这个格式中“9”的位置填充数字,构成输入字符串。
如果是逻辑型数据,把InputMask属性设置为“y”,文本框中就只能接受用户键入的“y”或“n”,而不接受输入“t”或“f”。
对于日期数据,可用Century属性设置年份的前两个数字是否显示。
除了上述属性外,还有以下常用的文本框属性和事件。
1、Alignment属性:确定文本框中的内容是左对齐、右对齐、居中还是自动对齐。
自动对齐的具体方式取决于数据类型,例如,数值型数据右对齐,字符型数据左对齐。
2、Maxlenth属性:用在未设置InputMask属性时决定文本框中字符型数据的长度。
3、ReadOnly属性:该属性值为.t.时,文本框显示为灰色,表明不可编辑其中的数据。
4、SelectOnEntry属性:确定当文本框得到焦点时是否自动选中文本框中的内容。
5、PasswordChar属性:利用该属性可在文本框中接收用户密码,可以把它设置为*或其他的一般字符,这样,在运行表单时,文本框的Value和Text属性可以接受用户真正输入的信息,而在屏幕上显示的却是PasswordChar所指定的字符。
6、Valid事件:若要检查用户输入文本框中的值,可以编写Valid事件代码,利用代码来检查数据。
例如,形成一个让用户只键入正数的文本框,可在文本框的Valid事件代码中包含如下的代码:If this.value<=0=messagebox(“请输入一个正数”,1) &&显示提示信息,并重新输入数据Return 0 &&结束事件代码的执行Endif七、编辑框使用编辑框可让用户备注字段、内容较长的字符字段或较长的字符文本。