程序员将反复使用的代码存到了Resize 事件中,将该事件当做一个过程来调用。 Resize在本程序中并没有什么实际意义。
在表单的Resize事件中添加以下代码:
purview=val(alltrim(tabpurview.权限级别))
pjyb=tabpurview.经营部
pglb=tabpurview.管理部
pgcb=tabpurview.工程部
pcwb=tabpurview.财务部
pbab=tabpurview.保安部
pjls=tabpurview.经理室
psysgl=tabpurview.系统管理
manager=alltrim(thisform.text2.value)
do form form\fdesktop &&调入表单fdesktop
thisform.release &&刷新表单
单击“登录”按钮,系统将判断密码是否正确。如果密码不正确,将提示重新输入,三次后仍不正确,系统将自动退出。
在“登录”按钮的Click事件中添加以下代码:
select tabpurview
cname=alltrim(thisform.text2.value)
ppassword=alltrim(thisform.text1.value)
set order to 操作员姓名 &&指定控制索引文件
if empty(操作员姓名) &&判断操作员字段是否为空
thisform.resize &&执行表单的Resize事件
store .t.to pjyb,pglb,pgcb,pcwb,pbab,pjls,psysgl &&给多个内存变量赋予相同的值
else
seek cname &&查找输入的操作员姓名
set exact on &&设置字符精确比较
if alltrim(tabpurview.密码)!=ppassword
cn=cn+1
do case
case nanswer=6
thisform.text1.value=''
thisform.text1.setfocus &&文本框获得焦点
case nanswer=7
messagebox('不要乱来!',48,'系统登录')
thisform.release &&释放表单
endcase
if cn=3
thisform.release
endif
else
thisform.resize &&执行表单的Resize事件
endif
endif
set exact off &&设置字符非精确比较
在“取消”按钮的Click事件中添加以下代码:
quit &&退出
在控件listview1的ItemClick事件中添加以下代码:
manager=alltrim(thisform.listview1.selecteditem.text)
thisform.text2.value=manager
thisform.text1.setfocus &&文本框获得焦点
用户单击快捷工具栏上的“经营部”按钮,在弹出的功能列表项中选择“小区信息生成”选项,进入小区信息生成界面。通过小区信息生成模块可进行小区区域数量的生成。小区信息生成运行结果如图4所示。
图4 小区信息生成表单运行结果
(1)在物业管理系统的项目中,新建一个表单,命名为为“小区信息生成”。
(2)在表单中添加Label控件、Spinner控件、Commandgroup控件、Shape控件。
(3)重要控件的重要属性如表4所示。
表4 重要控件的重要属性及值
对象 |
属性 |
值 |
Label |
AutoSize |
True |
Shape |
BorderStyle |
1-实线(默认值) |
Shape |
SpecialEffect |
0-3文 |
单击“开始生成”按钮,将自动生成小区基本信息保存到小区信息表“Tabxqinfo”中。小区编号区域由微调框所指定。如果数据表中有该小区编号,将不被生成。保存完毕,调入“小区信息登记”表单,进行小区详细信息的添加。具体代码如下:
cstart=thisform.spinner1.value
cend=thisform.spinner2.value
s=alltrim(str(cstart))
e=alltrim(str(cend))
cpicture=sys(5)+sys(2003)"+'\images\emptyimage.bmp'
cmessagetitle='小区信息生成'
cmessagetext='确认生成编号为 '+s+'至 '+e+'的小区信息吗?'
nAnswer=messagebox(cmessagetext, 4+32,cmessagetitle)
do case
case nAnswer=6
i=1
for i=cstart to cend
xqno=alltrim(str(i))
select *;
endif
endfor
messagebox('数据保存成功!',48,'小区信息生成')
thisform.release
do form wygl\form\小区信息登记 &&调入表单
case nAnswer=7
thisform.spinner1.setfocus
endcase
用户进入系统后,单击主界面“管理部”按钮,在弹出的功能选项表中选择“业主信息登记”选项,进入业主信息登记界面。通过业主信息登记界面可以实现添加、修改、删除、业主信息,可以通过查询方式浏览业主信息及用户单击相应的业主代号选项,再单击修改业主信息按钮或添加新业主按钮可直接调用业主信息界面。业主信息登记运行结果如图5所示。
若图片无法显示请联系QQ752018766,本论文免费,转发请注明源于www.751com.cn
图5 业主信息登记表单运行结果
(1)在物业管理系统的项目中,新建一个表单,包含Form1、Form2 、Form3 、Form4的表单集,名称为“业主信息登记”。
(2)在Form1表单中添加Label、Combo控件、Text控件、Grid控件、List控件、Command控件、Commandgroup控件、Optiogroup控件、Date and Time Picker控件、Edit控件。
(3)重要控件属性如表5所示。
表5 重要控件的重要属性及值
控件名 |
属性 |
值 |
功能 |
Form1.Combo1 |
RowSource RowSourceType |
tabxqinfo.小区名称 6-字段 |
提供小区列表 |
Form1.Grid1 |
ColumnCount |
1 |
提供大楼列表 |
Form1.Grid3 |
ColumnCount RecordSource |
21 tabyzinfo |
提供业主信息列表 |
Form1.List1 |
ColumnCount ColumnWidths RowSourceType |
2 90,70 6-字段 |
提供房屋列表 |
Form3.Combo2 |
RowSource RowSourceType |
已进住,未进住 1-值 |
提供是否进住列表 |
Form3.Grid1 |
ColumnCount RecordSource |
27 tabrkinfo |
提供家庭员列表 |
在Form1表单的“添加新业主”按钮的Click事件中添加以下代码:
yxq=alltrim(thisform.combo1.displayvalue)
ydl=alltrim(thisform.text1.value)
yfw=alltrim(thisform.text2.value)
if empty(yxq) or empty(ydl) or empty(yfw)
messagebox('请选择小区名称、大楼名称和房屋编号!',48,'操作失败')
else
select tabyzinfo
locate for 购入房编号=yfw &&顺序查询
if found()
messagebox('此房屋已住人!',48,'业主信息登记')
else
thisform.parent.form3.visible=.t. &&显示表单
lfjno=len(yxq)+len(ydl)+1
fjno=substr(yfw,lfjno)
thisform.parent.form3.text1.value=yxq
thisform.parent.form3.text2.value=ydl
thisform.parent.form3.text3.value=fjno
thisform.parent.form3.text4.value=yfw
thisform.parent.form3.text5.value=yfw
store '' to thisform.parent.form3.text6.value,thisform.parent.form3.text7.value,;
endif
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页