单击此处编辑母版样式,单击此处编辑幻灯片母版样式,第二层,第三层,第四层,第五层,*,*,FoxPro,本次课的教学内容:,5.5,常用控间的使用,本次课的教学目的与要求:,1、标签、文本框、编辑框、微调按钮,2、列表框、计时器、图像,本次课的教学重点与难点:,重点:属性、事件代码的编写,难点:事件代码的编写,讲授课时:2学时,1,常用控件,2,一、标签Label控件),标签用以显示文本。显示内容可通过Caption属性设置。,一般被设置的属性为:,1、Caption:可通过代码设置在运行时改变其值,注意数据类型只能是字符型,2、Autosize:自动调整标签大小,3、Alignment:标签文本在控件中的对齐方式,0:左对齐默认方式;,1:右对齐;2:居中对齐,3,4、BackColor:标签背景色,5、BackStyle:设置标签是否透明,如果透 明,那么BackColor设置无效,6、Font开头的属性用来设置显示内容的字体属性,如红色宋体字等,7、ForeColor:标签显示内容的颜色,8、标签位置设定Left/Top/Width/Height,一般用布局工具栏,9、Visible:标签隐藏否,可编程控制,4,标签控件事件方法,1、Click事件:点击该标签时发生,在里面写上你要执行的代码,,2、DblClick事件:双击该标签时发生,3、MouseMove事件:当鼠标移动到该标签上时发生,5,控件布局,左边对齐,右边对齐,顶边对齐,底边对齐,垂直居中对齐,水平居中对齐,相同宽度,相同高度,相同大小,水平居中,垂直居中,置前,置后,选取多个控件时设置,选定单个控件也可设置,6,例1 设计一应用程序封面,例2 设计一封面上有蓝色椭圆,点击时变红色,放开时变绿色,椭圆中有黄色文字“中南林学院字样。,7,二、命令按钮CommandButton控件),主要用来启动某个事件、完成特定功能。,如:添加记录,移动记录,退出表单等,常用属性:,Caption、Default(可用Enter键确认)、Cancel可用Esc键取消、Enabled(能否被选择或响应)、Picture(图片按钮,常设置的事件:,Click、RightClick、DoubleClick,8,三、命令按钮组CommandButton控件),包含多个命令按钮的容器控件。,常用属性:,ButtonCount(按钮数目、,Buttons按钮数组,buttons(n)代表第n个按钮Value(指定命令组当前选定状态。可为数值或字符型。假设为数值n,表示第n个按钮被选定,常设置的事件:,Click,9,例:如下图,在表单中设置一组按钮,可完成对应功能。,操作步骤:,1、添加标签和文本框,一组命令按钮,并在环境中翻开sb表,2、设置外观格式,3、对按钮组添加代码 P230,do case,case this.value=1,.,case this.value=2,.,10,四、文本框TextBox控件),利用它可在内存变量、数组元素或非备注字段中输入或编辑数据。,一般被设置的属性为:,ControlSource:为文本框指定一个字段或变量。运行时显示变量值,也可修改。,Value:用户输入的值,如果要限制输入类型,设计时先赋初值。如初值为,那么只能输入日期,PasswordChar:假设文本框输入密码,输入时不想让别人知道,可输入指定字符。如“*,真正内容保存在Value中。,11,InputMask:指定在一个文本框中如何输入和显示数据,即模式匹配格式。如此处输入6个“!,那么只能输入6个大写字母。,Centruy、Hours、Seconds和DateFormat设置日期格式,12,文本框控件事件,文本框控件事件,除了与标签相同的事件以外,有自己几个特有事件。,名字解释:焦点-表单中有多个对象时,任一时刻只能有一个对象被激活,当光标进入该对象时,叫该对象获得焦点,光标离开该对象时,叫该对象失出焦点,要使某一对象获得焦点那么调用其方法Setfocus(),获得焦点时发生When事件,失去焦点时发生Valid事件,13,文本框控件事件,1、When事件:当光标进入文本框时发生,2、Valid事件:当光标离开文本框时发生,3、SetFocus事件:使文本框获得焦点,14,Text有三个超级属性:Selstart,Sellength,Seltext,这三个属性设计时不可用,运行时,当按左键选择了一,段文字,这三个属性的值记下了选择字符的情况。,例1 设计一表单,两文本框,要求:在第一文本框输入字符,选择其中一段,拷贝到第二文本框中。,步骤:1生成两文本框,2选Text1中的Valid事件,thisform.text2.value=this.seltext,或者 选Text2中的When事件,,this.value=thisform.text1.seltext,3)运行表单,15,例2 设计一个登录界面,指定用户名为user1,password为:1234,步骤:1、创立表单,添加一些控件,2、设置Caption属性,命令按钮的default属性,文本框的PasswordChar还可设置其Inputmask,3、为确认命令按钮添加Click事件,4、如要统计输入次数,需添加一个属性存储计数值,并将其默认值设置为数值,mao11,16,17,五、选项组控件OptionGroup),包含多个选项按钮,但只能选择一个,被选中按钮显示一个圆点,常用属性:,ButtonCount、Value、ControlSource、enabled,常用事件,P240,18,例:设计一选项组,能进行表单背景的选择,P240,8.scx,19,六、复选框,用于标记一个两值状态,如:真或假,当为真时,框内显示,否那么,显示空白。,常用属性:,caption,value,ControlSource,20,例、统计新生有多少人,form9.scx,store 0 to bm1,bm2,bm3,bm4,if thisform.check1.value=1,count for 考生类别=“城镇应届 to bm1 endif,if thisform.check2.value=1,count for 考生类别=“城镇往届 to bm2 endif,if thisform.check3.value=1,count for 考生类别=“农村应届 to bm3 endif,if thisform.check4.value=1,count for 考生类别=“农村往届 to bm4 endif,thisform.label1.caption=共有:+str(bm1+;,bm2+bm3+bm4,2)+人。,21,22,七、编辑框Editbox),可编辑长文本或备注字段,利用它可选择、剪切、复制文本。,属性,功能说明,ScrollBars,是否具有垂直滚动条,ReadOnly,能否修改编辑框中内容,HideSelection,焦点离开编辑框时是否仍被选定,Allowtabs,编辑框中能否用Tab键,Seltext,被选择文本的内容,SelStart,被选择文本的起始位置,SelLength,被选择文本的长度,ControlSource,指定一个字段或变量,并显示值,23,编辑框与文本框的主要区别:,1、编辑框只能用于输入或编辑文本数据,即字符型数据;而文本框可适用于数值型等4种类型的数据。,2、文本框只能供用户键入的一段数据;而编辑框能输入多段文本,即回车键不能终止编辑框的输入。,24,例:设计一个表单,要求当文本框得到焦点时能立即显示在编辑框中选定的文本。,步骤:1)创立表单,在表单上创立一文本框 和一编辑框。,2)edit1编辑框的lostfocus事件代码编写如下:This.Hideselection=.f.,3)Text1文本框的gotfocus事件代码编写如下:This.value=thisform.edit1.seltext,4)执行表单,25,另:去除在edit1编辑框中选定的文本:,Thisform.edit1.seltext=“,将edit1编辑框中选定的文本送剪贴板:,_cliptext=thisform.edit1.seltext,26,八、列表框ListBox),显示的是一组工程,而不是可以编辑的文本。用户可从中选择一个或多个条目。还可配合滚动条浏览。,常用属性:教材P241,常用事件:KeyPress,DblClick,Click,27,九、组合框ComboBox),与列表框类似,提供一组条目供用户选择。但只有一个条目可见,可通过下拉按钮选择其它项,而且也只能选择一项,不能多项选择。,组合框有:,下拉列表框,和,下拉组合框,两种。,前者只能在列表选择,后者还可从编辑框输入。,常用属性与列表框类似:,RowSourceType、RowSource、Value等,常用事件:InteractiveChange更改值时发生,15.scx,28,例1 将一列表框中选定拷贝到另一列表框中。,例2 建立一表单,在表单上创立一组合框,一列表框和一按钮,按一下按钮,从组合框中移动一列表项到列表框中。,29,作业:,一、书面作业,?Visual Foxpro程序设计上机与考试指南?中P197考试练习题八、考试练习题九。,二、磁盘作业,在表单上制作一标签、一命令按钮和一文本框,要求文本框初始内容为今年元旦,光标进入时自动变成今日日期,光标离开时今日日期显示在标签中,30,