VF车辆管理系统 第7页

VF车辆管理系统 第7页

在“按车牌号”组合框的InteractiveChange事件中添加以下代码:

cif='left(车牌号码,len(alltrim(thisform.container1.combo1.displayvalue)))==;

thisform.container1.combo1.displayvalue'

thisform.resize     &&执行表单的Resize事件

在“按车辆类型”组合框的InteractiveChange事件中添加以下代码:

cif='left(车辆类型,len(alltrim(thisform.container1.combo2.displayvalue)))==;

thisform.container1.combo2.displayvalue'

thisform.resize     &&执行表单的Resize事件

在“按驾驶员”单选框的InteractiveChange事件中添加以下代码:

cif='left(驾驶员,len(alltrim(thisform.container1.combo3.displayvalue)))==;

thisform.container1.combo3.displayvalue'

thisform.resize     &&执行表单的Resize事件

3.5  车辆报废设计

用户单击主菜单车辆管理下的车辆报废子菜单选项,进入车辆报废界面。通过车辆报废模块进行添加、删除、修改报废车辆信息。并且支持快速浏览报废车辆信息及当前记录号的显示。辆报废表单运行结果如图6所示。

若图片无法显示请联系QQ3249114,本论文免费,转发请注明源于www.751com.cn

6 “车辆报废”表单运行结果

1.表单设计

1)新建一个表单,名称为Frm车辆报废。

2)在表单中添加Label控件、Combo控件、Text控件、MonthView控件(Microsoft MonthView Control, version 6.0)、Edit控件、Command 控件、Commandgroup控件和Container控件。

3)重要控件属性如表5所示。

5                      “车辆报废”表单重要控件属性列表

控件名

属性

Text4

InputMask

99-99-9999

Combo1

RowSource

RowSourceType

车辆档案.车牌号码

6-字段

2.代码设计

在表单的 Unload 事件中添加以下代码:

close all     &&关闭全部数据库文件

use database\车辆报废表 exclusive     &&以独占方式打开数据表

set exact off     &&设置字符非精确比较

delete from 车辆报废表 where 车牌号码="NoNumber"

set exact on     &&设置字符精确比较

close all

在表单的 Init事件中添加以下代码:

sele 2     &&选择2号工作区为当前工作区

thisform.Container1.combo1.value = 车辆报废表.车牌号码

thisform.Container1.text4.value= alltrim(dtoc(车辆报废表.报废时间))

thisform.Container1.text3.value= 车辆报废表.报废原因

thisform.Container1.text1.value= 车辆报废表.经手人

thisform.container1.edit1.value= 车辆报废表.备注

thisform.Container1.label16.caption= alltrim(str(recno()))        &&显示当前的记录号

在表单的Load事件中添加以下代码:

sele 1     &&选择1号工作区为当前工作区

use database\车辆档案

sele 2

use database\车辆报废表 exclusive     &&以独占方式打开数据表

thisform.visible=.f.     &&设置控件无效

public nof,l     &&定义全局变量

l=.f.

在表单的Activate事件中添加以下代码:

store l to thisform.Container1.text1.enabled,thisform.Container1.text3.enabled,;

  thisform.Container1.text4.enabled,thisform.Container1.combo1.enabled,;

  thisform.Container1.edit1.enabled     &&设置控件是否有效

在“报费时间”文本框后“6”按钮的Click事件中添加以下代码:

thisform.datalist.visible=.t.

thisform.datalist.setfocus

在“报费时间”文本框的KeyPress 事件中添加以下代码:

if nkeycode=18 or nkeycode=3

  thisform.container1.container2.command1.click

endif

单击“添加”按钮,如果按钮上的标题文本为“添加”,则在“车辆报废表”中追加一条新记录,并将 NoNumber 赋于 “车牌号码”字段用来避免出现两条空记录使索引字段出错。然后清空表单上相关控件的内容,做好接收用户输入信息的准备,并设置按钮的标题文本为“保存”;如果为“保存”,则将用户输入的信息保存到“车辆报废表”中,然后再将异动的有关信息写入“车辆档案”表的“备注”字段,并设置“车辆档案”表中的“报废否”字段为逻辑真,最后设置按钮的标题文本为“添加”。具体代码如下:      

在“添加”按钮的Click 事件中添加以下代码:

if thisform.commandgroup1.command5.caption="添加"

   sele 2

   append blank     &&追加空记录

              repl 车辆报废表.车牌号码 with  "NoNumber"+alltrim(str(reccount()))

   thisform.refresh     &&刷新表单  

   thisform.commandgroup1.command3.enabled=.f.

   thisform.commandgroup1.command4.enabled=.f.

   thisform.commandgroup1.command6.enabled=.f.

   thisform.commandgroup1.command7.enabled=.f.

   thisform.commandgroup1.command8.enabled=.t.  

   store '' to thisform.container1.text4.value,thisform.Container1.text1.value,;

   thisform.Container1.text3.value,thisform.Container1.combo1.value

   thisform.Container1.edit1.value=""

   thisform.container1.combo1.setfocus     &&Combo1获得焦点

   thisform.container1.container2.command1.enabled=.t.

else

   nof=.f.

   if empty(thisform.Container1.combo1.value) or empty(thisform.Container1.text4.value);

      or empty(thisform.Container1.text3.value)  &&判断字段是否为空  

     messagebox("车牌号、时间、原因不允许为空!",16,"错误")     &&弹出系统提示

   else

     thisform.commandgroup1.command5.caption="添加"  &&赋值给Command5的标题文本

     thisform.Commandgroup1.command5.tooltiptext="添加记录" 

     l=.f.

   thisform.activate     &&执行表单的Activate事件

     thisform.container1.container2.command1.enabled=.f.

     thisform.commandgroup1.command1.enabled=.t.

     thisform.commandgroup1.command2.enabled=.t.

     thisform.commandgroup1.command3.enabled=.t.

     thisform.commandgroup1.command4.enabled=.t.

     thisform.commandgroup1.command7.enabled=.t.

     thisform.commandgroup1.command6.enabled=.f.

     thisform.commandgroup1.command8.enabled=.f.

     sele 2

     repl 车辆报废表.车牌号码 with  thisform.Container1.combo1.displayvalue,报废时间 ;

  with ctod(thisform.Container1.text4.value),报废原因 with thisform.Container1.text3.;

value,经手人 with thisform.Container1.text1.value,;

备注 with thisform.container1.edit1.value

     thisform.commandgroup1.command5.setfocus     &&“添加”按钮获得焦点

     sele 1     &&选择1号工作区为当前工作区

     repl 车辆档案.备注 with "---车辆报废信息---"+chr(10)+"报废时间:"+alltrim(thisform.;

Container1. text4.value)+chr(10)+"报废原因:"+alltrim(thisform.Container1.text3.text);

+chr(10)+" 人:"+thisform.Container1.text1.value+chr(10)+"------",报废否 with .t.

     sele 2

   endif

endif

在“删除”按钮的Click事件中添加以下代码:

a=messagebox("确定要删除记录吗?",32+4,"系统提示")

if a=6

   if bof()=.f. and eof()=.f.

          sele 2

      delete     &&逻辑删除记录

      pack     &&物理删除

      go top     &&记录指针移动到第一条记录

      thisform.refresh     &&刷新表单

      thisform.init     &&执行表单的Init事件

      l=.f.

      thisform.activate     &&执行表单的Activate事件

      thisform.commandgroup1.command1.enabled=.t.

      thisform.commandgroup1.command2.enabled=.t.

      thisform.commandgroup1.command3.enabled=.t.

      thisform.commandgroup1.command4.enabled=.t.

      thisform.commandgroup1.command5.caption="添加"

      thisform.commandgroup1.command6.enabled=.f.

      thisform.commandgroup1.command7.enabled=.t.

   endif

endif

在“修改”按钮的Click事件中添加以下代码:

nof=.t.

thisform.commandgroup1.command5.caption="保存"     &&赋值给Command5的标题文本

l=.t.

thisform.activate  &&执行表单的Activate事件

thisform.commandgroup1.command1.enabled=.f.     &&设置控件无效

thisform.commandgroup1.command2.enabled=.f.

thisform.commandgroup1.command3.enabled=.f.

thisform.commandgroup1.command4.enabled=.f.

thisform.commandgroup1.command7.enabled=.f.

thisform.commandgroup1.command8.enabled=.t.

thisform.commandgroup1.command6.enabled=.t.

thisform.container1.combo1.setfocus     &&设置控件获得焦点

thisform.container1.container2.command1.enabled=.t.

如果用户在执行“添加”操作(变量nof=.f.)时,单击“取消”按钮,则删除添加的空记录;如果是“修改”操作,只需设置相关控件无效即可。具体代码如下:

在“取消”按钮的Click事件中添加以下代码:

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一页

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有