VFP6.0学习笔记(修订).doc_第1页
VFP6.0学习笔记(修订).doc_第2页
VFP6.0学习笔记(修订).doc_第3页
VFP6.0学习笔记(修订).doc_第4页
VFP6.0学习笔记(修订).doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.VFP6.0学习笔记2008年4月10日目 录一、VF6.0的主索引二、VF6.0表单建立三、VFP中”退出”按扭代码和VFP中猜数游戏中”开始”程序码四、VF6.0表单居中五、VFP中调用焦点方法:六、Vf6.0中两个表的链接查询七、VFP常用命令及用法实例八、在VFP中显示某特定条件的数据记录九、VFP中身份证号码修复十、VFP中计算年龄十一、VFP程序设计中英文注释十二、VFP中统计年龄十三、在VFP中设置焦点十四、中几个常用函数1十五、中时间函数十六、VFP中的字符串替换命令十七、中的常量十八、在一个表内查询有关字段内容的方法:十九、VFP的多表查询一、VF6.0的主索引VF6.0中的主索引的用途,是指在表中不能出现重复记录.二、VF6.0表单建立改变容器大小选项:在“全部”选项卡里输入Height(高度).Width(宽度值)改变图片显示容器属性:在属性框中选择Stretch.默认是0剪载,改成变填充,可将图片在容器中全部显示.修改窗体介绍:在属性栏选Caption.添加窗体背景图,在属性栏里选Picture,点上面的浏览按钮,进行查找图片文件.三、VFP中”退出”按扭代码和猜数游戏中”开始”程序码1、退出:在方法程序中双击Click Event,输入:thisform.release &本表单.释放2、开始:thisform.label1.visible=.f. &重新开始,abel1标签的可见为假,即赢字隐去.thisform.label2.visible=.f. &将label2标签的可见为假,即输字隐去.thisform.text1.value=int(rand()*10) &设置本表单text1文本框的随机值.本例中随机值是10。thisform.text2.value=int(rand()*10) &设置text2文本框的随机值.本例中随机值是10。thisform.text3.value=int(rand()*8) &设置text3文本框的随机值.if thisform.text1.value=7 .or. ; thisform.text2.value=7 .or. ; thisform.text2.value=7 &假如text1的值等于7或者text2等于7或者text3等于7.如果为两行及以上可用分号(;)分开,最后一行不用分号,不影响命令执行。 thisform.label1.visible=.t. &那么label1标签的可见为真,即赢字显示出来 else &否则 thisform.label2.visible=.t. &label2标签可见为设为真,即输字显示出来. endif &结束假设 四、VF6.0表单居中在表单属中选择AutoCenter,将其值改为真,表示表单自动居中。为了使表单运行时不再运行其它语句,在属性窗体中选WindowType,将其值改为1模式,只有在关闭表单后其它程序才能使用。修改表单名称:Caption修改名称方框透明:BackStyle中修改为透明五、VFP中调用焦点方法:对象名称.setfocets 程序将自动在该方框中设置输入焦点.六、Vf6.0中两个表的链接查询SELECT Jbqk.妇女编码, Jbqk.妇女姓名, Jbqk.妇女身份证, Jbqk.妇女民簇, Jbqk.妇女婚姻, Jbqk.女婚变日期, Jbqk.丈夫姓名, Jbqk.丈夫身份证, Jbqk.丈夫民簇, Jbqk.丈夫婚姻, Jbqk.避孕时间, Jbqk.避孕状况, Jbqk.xynh, Jbqk.xynvh, Syjjtzn.孩次, Syjjtzn.性别, Syjjtzn.是否合法, Syjjtzn.子女出生, Syjjtzn.生育备注;(指明调用哪些字段,每一个字段前必须加有表名称,字段名之间用英文或半角下的逗号“,”分开) FROM jbqk INNER JOIN syjjtzn ;(指明调用表的名称) ON Jbqk.妇女编码 = Syjjtzn.妇女编码;(指明两个表关联的字段名) ORDER BY Jbqk.妇女编码;(设定排序字段名,本例中为升序) INTO TABLE g:资料类数据库文件ylfn出生查询2.dbf(查询结果保存路径)七、VFP常用命令及用法实例以“表”形式浏览内容:brow (表式浏览)条件:for (浏览条件)显示字段名:fields 例如:brow fields fnxfhm (回车)只显示字段名为fnxfhm的内容(注意:两个命令之间不能用for)八、在VFP中显示某特定条件的数据记录包含命令: 例如:将fnxm中包含“陈” 字的显示出来 Brow for “陈” $ fnxm 相对等于命令:= (包括)绝对等于命令:=(完全相等)大于命令:fncsrq大于的显示出来:brow for fncsrq1970.03.21九、VFP中身份证号码修复replace all fnsfhm with substr(fnsfhm,1,6) + substr(dtoc(fncsrq),3,2) + substr(dtoc(fncsrq),6,2) + substr(dtoc(fncsrq),9,2) +substr(fnsfhm,13,3) for len(alltrim(fnsfhm)=15replace all fnsfhm with substr(fnsfhm,1,6) + substr(dtoc(fncsrq),1,4) + substr(dtoc(fncsrq),6,2) + substr(dtoc(fncsrq),9,2) +substr(fnsfhm,15,4) for len(alltrim(fnsfhm)=18十、VFP中计算年龄1、育龄妇女初婚时达到晚婚年龄的人数select count(fnxm) from jbqk.dbf where year(fnchrq) - year(fncsrq) = 232、显示达到某个条件的内容Brow for year(fnchrq) year(fncsrq) =23十一、VFP程序设计中英文注释FontSize:设定字号大小Alignment:文档对齐方式Caption:标题属性(可输入文字内容)Visible:可见属性(真或假)Click Event:按动事件thisform.release :本表单.释放ForeColor:设置文字或前景颜色Disabledback:设置背景颜色十二、VFP中统计年龄1、育龄妇女初婚时达到晚婚年龄的人数select count(fnxm) from jbqk.dbf where year(fnchrq) - year(fncsrq) = 23 (select为选择命令,count为统计计算命令,from为调用表命令)2、显示达到某个条件的内容Brow for year(fnchrq) year(fncsrq) =23select count(fnxm) from jbqk.dbf where (year(fnchrq)-year(fncsrq) = 23 and month(fnchrq)=month(fncsrq) and day(fnchrq)=day(fncsrq) or (year(fnchrq)-year(fncsrq)23 and month(fnchrq)23 and day(fnchrq)day(fncsrq)十三、在VFP中设置焦点设置焦点:意思是程序开始后默认动作处mand1.SetFocus &本表单.command1.设置焦点.command1是开始按扭的名称,程序开始时系统自动在该处显示动作虚框。表单后缀名是scx十四、中几个常用函数1()返回目前的系统日期()返回目前的系统时间()将小写字母转换成大写字母()将大写字母转换成小写字母()将字符型转换成日期型格式()将日期型转换成字符型格式()计算字符表达式的长度()删除字符串前置和尾部空白()删除字符串尾部空白()删除字符串前置空白()节选字符串的位数,第一个数为第几位,第二个数为连续的个数()将数值表达式转换成字符串()将字符串转换成数值表达式十五、中时间函数Year()取年份Month()取月份Day()取天日十六、VFP中的字符串替换命令STUFF()字符串替换,如:REPLACE all fnhjddm with STUFF(fnhjddm,7,3,“999”)意思是将字段fnhjddm中从第7位起取3个字符替换成999字段名”Fnhjddm”是妇女户籍地代码十七、中的常量字符常量都必须包含在引号中日期常量都必须包含在大括号中逻辑常量都必须包含在句点(.)中十八、在一个表内查询有关字段内容的方法:SELECT JBQK.Fnbm,JBQK.Pyxm,JBQK.Fnxm,JBQK.Fnxjd,JBQK.xynh,xynvh;(指定字段名命令)(字段名,每一个字段名必须带有表的名称,如:jbqk.fnxm,)FROM E:乡级软件安装数据表乡级软件安装BFHFSJBQK.DBF; (指定路径命令)(文件的路径.)WHERE (JBQK.PYXM=zz)(显示的条件命令)(显示的条件,可以不用条件)意思是:显示E盘下的乡级软件安装数据表乡级软件安装BFHFSJBQK.DBF表的几个字段内容,一行不够用另起一行时在上一行的后面加分号,表示继续执行下一行命令十九、VFP的多表查询SELECT Jbqk.fnbm, Jbqk.fnxm, Jbqk.fngzdw, Jbqk.fnsfhm, Jbqk.fnmz,Jbqk.fnhyzk,Jbqk.fnhbrq,Jbqk.zfxm,Jbqk.zfsfhm, Jbqk.zfmz, Jbqk.zfhyzk,Jbqk.byzk, Jbqk.byksrq, Jbqk.xynh, Jbqk.xynvh, Syjjtzn.znhc, Syjjtzn.znxb,Syjjtzn.zcsx, Syjjtzn.zncsrq, Syjjtzn.sybz;FROM jbqk INNER JOIN syjjtzn ; ON Jbqk.fnbm = Syjjtzn.fnbm; INTO CURSOR 查询4二十、将系统日期格式设置为年月日格式SET DATE ANSI (将系统日期格式设置为年月日格式)SET CENTURY on (年份为四位)计算年龄1、育龄妇女初婚时达到晚婚年龄的人数select count(fnxm) from jbqk.dbf where year(fnchrq) - year(fncsrq) =283 2、显示达到某个条件的内容Brow for year(fnchrq) year(fncsrq) =233、替换领取独生子女证时间日期为当前月的最后一天gomonth(date(),1) - day(gomonth(date(),1)下个月的第一天gomonth(gomonth(date(),iif(day(date()=1,1,0) - day(gomonth(date(),iif(day(date()=1,1,0)-1),1)40、另外一个替换独生子女日期命令SELECT 表GO topDO WHILE NOT EOF()aa=VAL(SUBSTR(DTOC(出生时间),1,4)bb=VAL(SUBSTR(DTOC(出生时间),6,2) IF bb=12 REPLACE 领证时间 WITH CTOD(ALLTRIM(STR(aa+1)+01+01) ELSE REPLACE 领证时间 WITH CTOD(ALLTRIM(STR(aa)+ALLTRIM(STR(bb+1)+01) ENDIF SELECT 表SKIPENDDO修改身份号码1、以下命令将修复身份证号码和出生年月日相同,15位和18位的分别修复:replace all fnsfhm with substr(fnsfhm,1,6) + substr(dtoc(fncsrq),3,2) + substr(dtoc(fncsrq),6,2) + substr(dtoc(fncsrq),9,2) +substr(fnsfhm,13,3) for len(alltrim(fnsfhm)=15replace all fnsfhm with substr(fnsfhm,1,6) + substr(dtoc(fncsrq),1,4) + substr(dtoc(fncsrq),6,2) + substr(dtoc(fncsrq),9,2) +substr(fnsfhm,15,4) for len(alltrim(fnsfhm)=18替换命令如:想替换现居地代码,1、先用brow for 查出要查看的内容,例如:查县直县委办(县委办代码是401)代码等于空的,请打入:brow for fndwdm= 回车。2、然后,再用repl fndwdm with 371421600401回车3、替换日期型字段内容replace 妇女初婚日期 with 妇女婚变日期 for empty(妇女初婚日期) = .t. and. 婚姻状况=初婚4、将妇女出生日期前面加上“371421”后面加上“321”组成一个15位的身份证号码替换

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论