




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章表单控件设计 输出类 标签 图象 线条 形状输入类 文本框 编辑框 微调控件 列表框 组合框控制类 命令按钮 命令按钮组 复选框 选项按钮组 计时器容器类 表格 页框 Container容器连接类 ActiveX控件 ActiveX绑定控件 超级链接 1 第七章表单控件设计 7 1输出类控件该类控件包括标签 图象 线条 形状 下面通过两个例题看一看这些控件对象如何在表单上设计以及如何设计它们的属性 例07 1设计如右图所示的表单 2 第七章表单控件设计 例7 1设计如右图所示的应用程序的封面 设计步骤如下 1 在命令窗口输入 MODIFORME7 12 在表单上创建标签和形状 3 设置属性 如书表7 4 4 将封面文字置前于椭圆 3 第七章表单控件设计 5 Form1的Activate事件代码THISFORM Shape1 Width THISFORM Label1 Width 1 3THISFORM Shape1 Height THISFORM Label1 Height 2x THISFORM Width 2y THISFORM Height 4THISFORM Shape1 left x THISFORM Shape1 Width 2THISFORM Shape1 Top yTHISFORM Label1 Left x THISFORM Label1 Width 2THISFORM Label1 Top y THISFORM Shape1 Height 2 THISFORM Label1 Height 26 Form1的RightClick事件代码THISFORM Release 4 第七章表单控件设计 7 1输出类控件我们可以编写如下程序先后调用封面与菜单 MAIN PRGCLEARdoforme7 1wait dosb mprRETURN在执行上述程序后 出现封面表单时 注意观察屏幕 标签文字处的开始会有 光标 5 第七章表单控件设计 7 2输入类控件本节主要包括文本框 编辑框 列表框 组合框和微调控件 7 2 1文本框文本框控件是一个基本控件 供用户输入或编辑数据 一 文本框的值Value属性用于指定文本框的值 并在框中显示出来 可以通过属性窗口或代码形式设定 代码形式如 THIS Value 你好 Value包括数值型 字符型 日期型或逻辑型4种类型之一 在输入数据时 按回车键表示结束 6 第七章表单控件设计 7 2输入类控件7 2 1文本框二 焦点焦点是指对象被选定 焦点的标志可以是文本框内的光标 命令按钮的虚线框等等 焦点的获得可以通过Tab键来切换或单击对象来激活等 也可用代码来获得 如以下方法程序的功能是对指定的控件设置焦点 Control SetFocus如THISFORM Text1 SetFocus要对控件设置焦点 其Enabled与Visible属性均为 T 与焦点有关的两个事件是 GotFocus和LostFocus 7 第七章表单控件设计 7 2输入类控件7 2 1文本框三 控件与数据绑定 1 数据绑定的概念 数据绑定是指将文本框与某个数据源联系起来 用文本框的ControlSource属性来指定 数据源有数据表的字段和变量两种 2 数据绑定的功效 文本框与数据绑定后 控件值便与数据源的数据一致了 这时文本框与数据源之间可以相互传递数据 8 第七章表单控件设计 7 2输入类控件7 2 1文本框四 文本框生成器1 格式选项卡 2 样式选项卡3 值选项卡下面我们看一下 文本框生成器的使用 9 第七章表单控件设计 7 2输入类控件7 2 2编辑框编辑框用于输入或编辑文本 它只能编辑文本 即字符型数据 它可以输入多段文字 它一般用来编辑数据表中数据量比较大的备注字段 VFP提供了垂直滚动条 文本框可以编辑4种数据 但它只能在一个段落输入数据 编辑框与文本框的区别见右图 编辑框的生成器与文本框类似 10 第七章表单控件设计 例7 2设计一个表单 要求当文本框得到焦点时能立即显示在编辑框中选定的文本 1 在表单上创建一个文本框和编辑框 2 在数据环境中添加SB 将Edit1编辑框与备注字段SB 备注绑定 3 Edit1编辑框的LostFocus事件代码如下 THIS HideSelection F 4 Text1文本框的GotFocus事件代码如下 THIS VALUE THISFORM Edit1 seltext 11 第七章表单控件设计 7 2输入类控件7 2 3列表框与组合框列表框和组合框都有一个供用户选项的列表 它们之间的区别如下 1 列表框任何时候都显示它的列表 而组合框平时只显示一个选项 待用户单击它的向下按钮后才能显示可滚动的下拉列表 2 组合框分为下拉组合框和下拉列表框 前者允许输入数据 后者不允许 列表框和组合框的区别如右图所示 12 第七章表单控件设计 7 2输入类控件7 2 3列表框与组合框一 列表框生成器1 列表项选项卡 指定要填充到列表框中的项 数据有3种类型 表或视图中的字段 手工输入数据或数组中的数据 2 样式选项卡 指定列表框的样式 所显示的行数 是否递增搜索 3 布局选项卡 用于控制列表的列宽和显示 4 值选项卡 包含两个组合框 分别用来指定返回值 BoundColumn属性 以及存储返回值的字段 ControlSource属性 二 控件值源的属性共有9类 见书212页表7 5 它们均由RowSourceType属性指定 13 第七章表单控件设计 例7 3在列表框中填充SB表的编号和名称两个字段 要求选定列表框的任一项 就能使文本框中显示编号字段值 1 在表单中创建1个列表框控件和1个文本框控件 2 用列表框生成器或属性窗口设置列表框控件值类型和值 SB中的 编号 和 名称 两个字段值为其值 3 List1的InteractiveChange事件代码如下 THISFORM Text1 Value THIS Value 14 第七章表单控件设计 7 2输入类控件7 2 3列表框与组合框三 组合框组合框的功能是供用户在其列表中选项 或人工键入一个值 组合框的Style属性将该控件分为两种类型 Style属性为0 代表下拉组合框 Style属性为2 代表下拉列表框 下面通过例题来看一下组合框的应用 15 第七章表单控件设计 例7 4试用BMDM表的代码来修改SB表的部门字段 要求SB表在列表框显示 BMDM表在组合框显示 当列表框确定一个记录后 便可用组合框的选项来替代表的部门字段值 1 在表单上创建2个标签 1个列表框和1个组合框 2 在数据环境中添加SB和BMDM 3 属性设置 见表7 7 4 Combo1的InteractiveChange事件 THISFORM LIST1 ReFresh 5 Form1的Init事件 THISFORM Combo1 Enabled F 6 List1的InteractiveChange事件 THISFORM Combo1 Enabled T 16 第七章表单控件设计 7 2输入类控件7 2 3列表框与组合框四 属性与方法程序简介1 ListCount属性Control ListCount功能 返回组合框或列表框中列表项的个数 该属性在设计时不可用 在运行时为只读属性 2 ListIndex属性Control ListIndex nIndex 功能 返回或设置组合框 列表框 列表显示时选定项的顺序号 可取1到Listcount之间的整数之一 该属性在设计时不可用 在运行时为只读属性 3 Value与DisplayValue属性Value属性返回在列表中选定的项 DisplayValue返回组合框中键入的文本 17 第七章表单控件设计 7 2输入类控件7 2 3列表框与组合框四 属性与方法程序简介4 Selected属性 Form Control Selected nIndex LExpr 功能 用于分辨组合框或列表框中某一列表项是否被选中 当选中时Selected属性返回 T 否则 F 该属性在设计时不可用 在运行时为只读属性 5 AddItem方法程序Control AddItem cItem nIndex nColum 功能 当组合框或列表框的RowSourceType属性为0时 使用本方法程序可在其列表中添加一个新项 与AddItem相关的两个方法程序 RemoveItem方法程序能从RowSourceType属性为0的列表中删除一项 Requery方法程序当RowSource中的值改变时能更新列表 18 例7 5设计一个表单 为表单中的列表框增加新项 并满足如下要求 1 在列表项的行首设置一个可移动的按钮 并在每个列表项左侧显示一个图形 如右图所示 2 若用鼠标单击列表中的某选项 能在标签上显示顺序号与选项 操作步骤 1 在表单上创建1个列表框和1个标签 2 Label1属性设置 AutoSize T 3 List1属性设置 RowSourceType 0MoveBars T 4 List1的Init的事件代码如下 THIS AddItem 音乐 THIS AddItem 上网 THIS AddItem 文学 THIS AddItem 摄像 THIS AddItem 风格 THIS Picture 1 MUSIC ICO THIS Picture 2 INTERNET ICO THIS Picture 3 CLASSLIB ICO THIS Picture 4 VIDEO ICO THIS Picture 5 FRMSTYLE ICO THIS Listindex 1 5 List1的Click事件代码编写如下 FORi 1TOTHIS ListCountIFTHIS Selected i T THISFORM Label1 Caption STR i 1 SPACE 1 THIS ValueENDIFENDFOR 19 例7 6在表单上创建1个组合框和1个文本框 要求如下 1 组合框的列表包含SB表的编号字段值 2 能在组合框中为其列表键入新选项 3 若选取组合框列表中的项 也可以是刚添入的新选项 便能将它送入文本框 1 在表单上创建1个组合框和1个文本框 2 Combo1属性设置 Style 0RowSourceType 6RowSource SB 编号3 Combo1的KeyPress事件代码编写如下 LPARAMETERSnKeyCode nShiftAltCtrlIFnKeyCode 13IFThis ListIndex 0THIS RowSourceType 0THIS AddItem THIS DisplayValue THIS Value THIS DisplayValueINSERTINTOSB11 编号 VALUES THIS DisplayValue THIS RowSourceType 6ENDIFENDIF 4 Combo1的InteractiveChange事件 THISFORM Text1 Value THIS Value 20 第七章表单控件设计 7 2输入类控件7 2 3列表框与组合框四 属性与方法程序简介6 List属性Control List nRow nCol 功能 返回组合框或列表框第nRow行 nCol列的内容 如下列表单Click事件代码可以显示单列组合框的全部列表项 FORi 1TOTHISFORM Combo1 ListCount THISFORM Combo1 List i ENDFOR 22 第七章表单控件设计 7 2输入类控件7 2 4微调控件微调控件用于接受给定范围之内的数值输入 它即可用键盘输入 也可单击该控件的上箭头按钮来增减其当前值 一 属性简介1 Value 表示微调控件的当前值 2 KeyBoardHighValue 设定键盘输入数值高限3 KeyBoardLowValue 设定键盘输入数值低限4 SpinnerLowValue 设定按钮微调数值低限5 SpinnerHighValue 设定按钮微调数值高限6 Increment 设定按一次箭头按钮的增减数 默认为1 00 7 InputMask 设置输入掩码 即设定数据格式 微调控件默认带两位小数 如微调控件绑定到字段 则输入掩码的位数不得小于字段的宽度 否则显示一串 号 二 事件选介1 DownClickEvent 按微调控件的向下按钮事件 2 UpClickEvent 按微调控件的向上按钮事件 23 第七章表单控件设计 7 3控制类控件7 3 1命令按钮与命令按钮组命令按钮在应用程序中起控制作用 用于完成某一特定的操作 其操作代码通常放置在命令按钮的Click按钮中 例7 7设计一个如左下图所示的密码输入窗口 要求最多允许输入3次密码 密码正确 进入右下图所示表单 24 第七章表单控件设计 左表单操作步骤 1 创建一个表单 在其中创建标签和文本框各一个 命令按钮2个 2 设置属性 见书P219表7 8 3 Form1的Load事件代码 publicii 0 4 Command1的Click事件代码 i i 1ifthisform text1 value 123456 thisform releasedoforme7 7h scxelseifi 3messagebox 密码错 请重新输入 thisform text1 value thisform text1 setfocuselsemessage 密码错 禁止进入系统 thisform releaseendifEndif 5 Command2的Click事件代码 thisform release 25 第七章表单控件设计 7 3控制类控件7 3 1命令按钮与命令按钮组二 命令按钮的外观设计1 文字命令按钮 1 命令按钮标题 用CAPTION属性设置 2 字体 大小 粗体 下划线 对应的属性分别为FontName FontSize FontItalic FontItalic FontUnderLine 3 标题折行显示 将WordWrap属性设置为 T 4 在标题中加热键 在某字符前插入符号 该字符就成为热键 如Comm and1表示a成为热键 按一次热键就会触发Click事件 2 图文命令按钮 1 命令按钮上显示图形 利用Picture属性设置一图形文件 2 命令按钮上显示图文 即设置图形又设置标题即可 26 第七章表单控件设计 7 3控制类控件7 3 1命令按钮与命令按钮组二 命令按钮的外观设计3 能显示提示框的命令按钮 将表单的ShowTips设置为 T 并在命令按钮的ToolTipText属性中设置提示文本 4 使命令按钮失效 1 使命令按钮淡化 将Enabled属性设置False 2 命令按钮淡化时显示图形 在DisablePicture属性中设置一个图形文件 5 指定命令按钮按下时显示的图象 在DownPicture属性设置一个图形文件 27 第七章表单控件设计 7 3控制类控件7 3 1命令按钮与命令按钮组二 命令按钮的外观设计6 隐藏命令按钮 1 将Style属性设置为1 表示不可见 为操作该不可见的命令按钮 最好设置MousePointer属性设置为不同寻常的指针形状 当鼠标指向该按钮时会以设定的形状显示 用户就可以操作了 2 利用Visible也可以隐藏命令按钮 但隐藏后不可见 利用MousePointer属性设置为不同寻常的指针形状也不行 除非在代码中重新设定该按钮属性 7 缺省命令按钮 将Default属性和Enabled属性设置为 T 8 附加Escape键命令按钮 将Cancel属性设置为 T 此时按ESC键将执行命令按钮的Click事件 28 第七章表单控件设计 7 3控制类控件7 3 1命令按钮与命令按钮组三 命令按钮组生成器命令按钮组控件是表单上的一个容器 它可包含若干个命令按钮 并能统一管理这些命令按钮 命令按钮组与组内的各个命令按钮都有自己的属性 事件 方法程序 既可单独操作各个命令按钮组 也可对组控件进行操作 下面看一下命令按钮组生成器如何操作 29 第七章表单控件设计 7 3控制类控件7 3 1命令按钮与命令按钮组四 命令按钮组及其命令的操作1 Click事件的判别对于命令按钮组及其每一个命令按钮分别设定Click事件2 容器中对象的引用 遵守逐层引用规则 如 THISFORM CommandGroup1 Command1 Caption3 容器及其对象的编辑 1 容器本身的编辑 选定容器即可编辑 2 容器中对象的编辑 指向容器单击右键 选择编辑命令 然后就可以编辑容器中对象了 3 设置共同属性 选定容器中的某些对象 然后设置 30 第七章表单控件设计 7 3控制类控件7 3 2复选框与选项按钮组一 复选框的外观复选框可被用户指明选定还是清除 其外观有方框和按钮两类 如右图所示 二 复选框的值Value属性表示了复选框的状态 0或 F 表示清除 1或 T 表示选定 2表示灰色状态 31 第七章表单控件设计 例7 9设计一个表单 要求能根据SB表统计车间任意组合后拥有的设备台数 如右图所示 设计步骤如下 1 创建1个表单 其中创建3个复选框 1个命令按钮和1个标签 2 属性设置 见表7 10 3 在数据环境中添入SB表 4 Command1的Click事件代码编写如下 STORE0TObm21 bm22 bm23IFTHISFORM Check1 value 1COUNTFOR部门 21 TObm21ENDIFIFTHISFORM Check2 value 1COUNTFOR部门 22 TObm22ENDIFIFTHISFORM Check3 value 1COUNTFOR部门 23 TObm23ENDIFTHISFORM LABEL1 CAPTION 共有 str bm21 bm22 bm23 2 台 32 例7 10从例 3所产生的快速表单SBQ SCX 如上左图所示 复制出SBXG SCX 如上右图所示 具体功能要求如下 1 若输入编号全为0 或以9开头给予信息提示 2 即可在文本框中输入名称 也可在组合框中选择名称 3 将部门1文本框设为只读 在其右边列表框选择部门名称显示在该文本框中 4 用微调控件来修改价格 5 使设备1复选框的标题随其值而变化 值为 T 时显示主要设备 否则显示非主要设备 6 在窗口右上角添加两个标签和1个文本框 用来显示记录号 7 添加命令按钮组 包含3个命令按钮 功能分别为上一条记录 下一条记录 退出表单 8 在表单中添加1条发亮的线 33 例7 10主要操作如下 1 复制表单 打开SBQ SCX 然后另存为SBXG SCX2 按题目要求设置好各控件的位置 3 将部门1文本框设置为只读 4 数据环境设置 添加BMDM和SB两个表 并取消它们之间的关系 5 属性设置 所有标签改为宋体 字体大小属性为10 属性见表7 11 编号1等控件的绑定在执行快速表单时已完成 6 Form1的Refresh事件代码如下 Yh RECNO 7 编号1的Valid事件代码编写如下 IFTHIS VALUE 9 MESSAGEBOX 超出范围 ENDIF 34 8 Combo1的Click事件代码如下 THISFORM 名称1 Value THIS Value9 List1的Click事件代码如下 THISFORM 部门1 Value THIS Value10 主要设备1InteractiveChange事件代码如下 IFTHIS ValueTHIS Caption 主要设备 ELSETHIS Caption 非主要设备 ENDIF11 主要设备1Refresh事件代码如下 IFTHIS Value EVALUATE THIS ControlSource THIS Caption 主要设备 ELSETHIS Caption 非主要设备 ENDIF 35 12 Commandgroup1的Click事件代码如下 DOCASECASETHIS Value 1IFrecno 1SKIP 1ENDIFTHISFORM REFRESHCASETHIS Value 3THISFORM ReleaseENDCASE 36 第七章表单控件设计 7 3控制类控件7 3 2复选框与选项按钮组三 选项按钮组选项按钮组是一个可包含若干个选项按钮的容器 单个选项按钮不能独立存在 用户使用时只能从中选定一项 1 选项按钮的外观如右图所示 选项按钮分为标准样式和按钮两类 它们可用选项按钮组生成器来设定 要想编辑其中单个按钮的属性 可利用快捷菜单选编辑或使用属性窗口确定某一按钮后进行设定 37 第七章表单控件设计 7 3控制类控件7 3 2复选框与选项按钮组三 选项按钮组2 Value属性单个选项按钮Value属性 值为1表示选定 为0表示未选定 选项按钮组的属性 表明被选定按钮
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025河南新乡市延津县县外在编在岗教师回乡任教选调模拟试卷及答案详解(各地真题)
- 2025年上半年四川绵阳市游仙区考核招聘教师31人模拟试卷及答案详解(夺冠系列)
- 2025年湖南益阳市交通投资运营集团有限公司下属子公司公开招聘(第一批)考前自测高频考点模拟试题及答案详解(名师系列)
- 2025年杭州拱墅区祥符街道社区卫生服务中心招聘编外聘用人员8人模拟试卷及完整答案详解一套
- 2025贵州紫云自治县青年就业见习21人模拟试卷带答案详解
- 2025北京中国音乐学院第一批招聘10人考前自测高频考点模拟试题及答案详解(有一套)
- 2025河南郑州城建职业学院招聘管理岗、教师、辅导员模拟试卷附答案详解(模拟题)
- 2025江苏盐城市射阳县商务局等单位招聘政府购买服务人员招聘计划核销模拟试卷及完整答案详解1套
- 2025江苏徐州邳州市面向毕业生招聘编制教师208人考前自测高频考点模拟试题附答案详解(黄金题型)
- 2025春季中国融通农业发展有限集团有限公司社会招聘考前自测高频考点模拟试题及参考答案详解
- DGTJ08-2310-2019 外墙外保温系统修复技术标准
- 光电美容培训课件
- 子痫及子痫前期病例分析
- 2025至2030年中国智慧场馆行业市场运营态势及投资前景研判报告
- 2025年热塑性硫化橡胶市场前景分析
- 竣工结算审计服务投标方案(技术方案)
- 公路施工质量培训课件
- 2024北森图形推理题
- 基础护理8章试题及答案
- 心理学教学课件 - 认知行为疗法
- 《汉语阅读教程》课件-2教学课件:汉语阅读教程L2
评论
0/150
提交评论