表单是Visual FoxPro中的核心,也是设计管理系统的主要组成部分。
权限表单用于在进行相关特殊操作时对用户进行身份验证,如果验证通过,则允许用户进行相应的操作,否则就不能进行下一步的操作。其操作步骤如下:
(1)在“项目管理器”窗口中切换到“文档”选项卡,选择“表单”项,然后单击“新建”按钮。
(2)在“表单设计器”窗口中,按照如图11-26所示的界面进行设计,其运行效果如图11-27所示。
图11-26 设计系统登录表单 图11-27 运行系统登录表单
(3)设置表单的主要属性设置。
· Autocenter:.T.—真。
· Caption:系统登录。
· Closenable:.F.—假。
(4)设置两个文本框控件的主要属性。
· IntegraHeight:.T.—真。
(5)设置两个标签控件的主要属性。
· Autosize:.T.—真。
· Fontsize:12。
· Fontname:宋体。
· Caption(Label1):姓名。
· Caption(Label2):密码。
(6)双击“确定”按钮,为按钮的“Click”事件输入如下代码。
x1=alltrim(thisform.text1.value)
x2=alltrim(thisform.text2.value)
Open database 设备数据库
Use 管理员
LOCA FOR alltrim(姓名)==alltrim(x1)
DO case
CASE X1==""
MESSAGEBOX("对不起!不能输入空值!",0+48+0,"注意!")
THISFORM.TEXT1.SETFOCUS
RETURN
CASE found()=.f.
MESSAGEBOX("对不起!姓名错误!请重输!",0+48+0,"注意!")
thisform.text1.value=""
thisform.text2.value=""
thisform.text1.setfocus
RETURN
CASE X2!=alltrim(密码)
MESSAGEBOX("对不起!密码错误!请重输!",0+48+0,"注意!")
thisform.text2.value=""
thisform.text1.setfocus
RETURN
OTHERWISE
USE KUCUN
BROW
thisform.release
ENDCASE
(7)双击“取消”按钮,设置如下代码。
Thisform.release
(8)双击窗体(Form1),选择过程中的“init”过程事件的代码如下所示。
This.text1.setfocus
(9)将该表单保存为“view1check.scx”,它将被“浏览库存表”命令所调用。
(10)将“确定”按钮中DO CASE循环的OTHERWISE一段的语句改为如下语句。
USE mairu
BROW
Thisform.release
(11)将该表单文件另存为“view1check2.scx”,它将被“浏览买入”命令所调用。
(12)将“确定”按钮中DO CASE循环的OTHERWISE一段的语句改为如下语句。
USE maichu
BROW
Thisform.release
(13)将该表单文件另存为“view1check3.scx”,它将被“浏览卖出”命令所调用。
(14)将“确定”按钮中DO CASE循环的OTHERWISE一段的语句改为如下语句。
Report form kucun.frx to printer prompt
Thisform.release
(15)将该表单文件另存为“view2check.scx”,它将被“打印库存表”命令所调用。
(16)将“确定”按钮中DO CASE循环的OTHERWISE一段的语句改为如下语句。
Report form mairu.frx to printer prompt
Thisform.release
(17)将该表单文件另存为“view2check2.scx”,它将被“打印买入记录”命令所调用。
(18)将“确定”按钮中DO CASE循环的OTHERWISE一段的语句改为如下语句:
Report form maichu.frx to printer prompt
Thisform.release
(19)将该表单文件另存为“view2check3.scx”,它将被“打印卖出记录”命令所调用。