VF车辆管理系统 第8页
if thisform.commandgroup1.command5.caption="保存" and nof=.t.
nof=.f.
else
dele
if bof()=.f.
skip -1 &&记录指针向上移动一条记录
endif
endif
thisform.init &&执行表单的Init事件
thisform.commandgroup1.command2.enabled=.t.
thisform.commandgroup1.command3.enabled=.t.
thisform.commandgroup1.command4.enabled=.t.
thisform.commandgroup1.command6.enabled=.f.
thisform.commandgroup1.command7.enabled=.t.
thisform.commandgroup1.command8.enabled=.f.
thisform.container1.container2.command1.enabled=.f.
在DateList 控件的DateClick 事件中添加以下代码:
mymonth=padl(alltrim(str(thisform.datalist.month)),2,'0')
myday=padl(alltrim(str(thisform.datalist.day)),2,'0')
thisform.container1.text4.value=alltrim(mymonth)+"-"+alltrim(myday)+"-";
+alltrim(str(thisform.datalist.year)) && 在日期文本框中显示为 “月月-日日-年” 的形式
thisform.datalist.visible=.f. &&设置控件无效
thisform.container1.text3.setfocus &&Text3获得焦点
用户进入系统后,单击主菜单车辆管理下的文修管理子菜单下的车辆文修查询模块选项,进入车辆文修查询界面。车辆文修查询表单运行结果如图7所示。
图7 “车辆文修查询”表单运行结果
(1)新建一个表单,名称为Frm车辆文修查询。
(2)在表单中添加Label控件、Grid控件、Edit控件、Check控件、Combo控件、Text控件、MonthView控件(Microsoft MonthView Control, version 6.0)、Command控件和Container控件。
(3)重要控件属性如表6所示。
表6 “车辆文修查询”表单重要控件属性列表
控件名 |
属性 |
值 |
Text4 |
InputMask |
99-99-9999 |
Combo1 |
RowSource RowSourceType |
车辆档案.车牌号码 6-字段 |
Gird1 |
Rowsource |
车辆文修表 |
在表单的 Load事件中添加以下代码:
sele 1 &&选择1号工作区为当前工作区
use database\车辆档案
sele 2
use database\车辆文修表
在表单的Init 事件中添加以下代码:
public nu,co,su &&设置全局变量
nu=0
thisform.container1.combo1.value=车辆文修表.车牌号码
在“按车牌号”复选框的Click事件中添加以下代码:
nu=1
if thisform.container1.check1.value=1
thisform.container1.combo1.enabled=.t. &&设置控件有效
else
thisform.container1.combo1.enabled=.f. &&设置控件无效
endif
在“按文修日期”复选框的Click事件中添加以下代码:
nu=1
if thisform.container1.check2.value=1
thisform.container1.text4.enabled=.t. &&设置控件有效
thisform.container1.combo2.enabled=.t.
thisform.container1.container2.command1.enabled=.t.
else
thisform.container1.text4.enabled=.f. &&设置控件无效
thisform.container1.combo2.enabled=.f.
thisform.container1.container2.command1.enabled=.f.
endif
在“按文修日期”文本框后面的“6”按钮的Click事件中添加以下代码:
thisform.datalist.visible=.t. &&显示Datalist
thisform.datalist.setfocus &&Datalist获得焦点
判断“按车牌号码”复选框是否被选中,如果被选中,则查询指定车辆在指定时间的记录;如果没被选中,则查询所有车辆在指定时间的记录。具体代码如下:
在“按文修日期”组合框的Click事件中添加以下代码:
nu=1
if thisform.container1.check1.value=0
if alltrim(thisform.container1.combo2.value)="之后"
select *;
from database!车辆文修表;
where 文修日期>ctod(thisform.container1.text4.text);
into cursor 临时车辆文修表
else
if alltrim(thisform.container1.combo2.value)="之前"
select * from database!车辆文修表 where 文修日期<ctod(thisform.container1.text4.text);
into cursor 临时车辆文修表
else
select * from database!车辆文修表 where 文修日期==ctod(thisform.container1.text4.text);
into cursor 临时车辆文修表
endif
endif
else
this.parent.combo1.click &&执行Combo1的Click事件
endif
thisform.container1.grid1.recordsource="临时车辆文修表" &&赋数据源
thisform.refresh &&刷新表单
在“按文修日期”文本框的KeyPress事件中添加以下代码:
endif
当用户改变单元格中的内容时,在thisform.container1.grid1.column1.text1.value 属性中写入车辆文修的相关信息。具体代码如下:
在表格控件的AfterRowColChange事件中添加以下代码:
thisform.container1.combo1.value=thisform.container1.grid1.column1.text1.value
set talk off
if nu=0
cdbf='车辆文修表'
sele 2
else
cdbf='临时车辆文修表'
endif
numb=recno()
count for &cdbf..车牌号码=thisform.container1.grid1.column1.text1.value to Co
sum &cdbf..共计费用 for &cdbf..车牌号码=thisform.container1.grid1.column1.text1.value to SU
thisform.container1.container1.container2.edit1.value= "车牌号为 "+thisform.container1.;
combo1.value+"的车辆,共文修了"+alltrim(str(Co))+"次,共计费用为"+alltrim(str(SU))+"元"
goto numb
在“按车牌号”组合框的Click事件中添加以下代码:
if thisform.container1.check2.value=0
select * from database!车辆文修表 where 车牌号码==thisform.container1.combo1.value;
into cursor 临时车辆文修表
thisform.container1.grid1.recordsource="临时车辆文修表" &&赋数据源
else
cif=ctod(thisform.container1.text4.text)
if alltrim(thisform.container1.combo2.value)="之后"
select * from database!车辆文修表;
where 车牌号码==thisform.container1.combo1.value and 文修日期>cif into cursor 临时车辆文修表
thisform.container1.grid1.recordsource="临时车辆文修表"
else
if alltrim(thisform.container1.combo2.value)="之前"
select *;
from database!车辆文修表 where 车牌号码==thisform.container1.combo1.value and 文修日期<cif;
into cursor 临时车辆文修表
thisform.container1.grid1.recordsource="临时车辆文修表"
else
select *;
from database!车辆文修表 where 车牌号码==thisform.container1.combo1.value and 文修日期==cif;
into cursor 临时车辆文修表
thisform.container1.grid1.recordsource="临时车辆文修表"
endif
endif
endif
thisform.refresh &&刷新表单
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一页