图4.1登录窗口
1) 创建窗口并设计属性
创建登录窗口(w_login),并调整其大小,在窗口上放置三个图片控件(p_1、p_2、p_3 、p_4、)、两个静态文本框控件(st_1、st_2)、两个单行编辑器控件(sle_1、sle_2)、三个命令按钮控件(cb_1、cb_2、cb_3、),各控件的位置和大小参照图4.1调整。其他需要修改的属性见表4—1,表中未列出的属性保留其默认值。 表4-1登录窗口及其控件的属性 对象 W_login P_1 P_2 P_3 P_4 St_1 属性 Title WindowType picturename picturename picturename picturename Text Alignment 取值 登录 Response! QQ截图20111024172608.gif 图片1.gif login.gif 图片2.gif 用户名; Center!
St_2 Cb_1 Cb_2 Cb_3 Sle_1 Sle_2 2)编写脚本
(1) 定义全局变量
Text Alignment Text Text Text Text Text password 密码: Center! 安全退出 登录 重置 “” “” True string ls_username,ls_password,ls_qx 分别存储登录用户的用户名、密码和权限 (2)【登录】按钮cb_2的clicked事件的脚本如下 string pw string q string userid
ls_username=sle_1.text select password,qx into :ls_password,:ls_qx from users
where id=:ls_username; if ls_password=sle_2.text then \ else
messagebox(\提示\输入的密码不对!请重新输入!\sle_2.text=\
end if end if
if ls_qx=\
open(w_studentlogin)
w_studentlogin.st_3.text=\欢迎\学生登陆!\if ls_qx=\ else
open(w_adminlogin2)
w_adminlogin2.st_1.text=\欢迎\管理员登陆,您的个人信息如下open(w_techerlogin)
w_techerlogin.st_3.text=\欢迎\老师登陆!\
else
sle_2.setfocus()
end if
还为此按钮自定义了U_keydown事件,事件代码如下 if keydown(keyenter!) then
//如果按了Enter键,则出发Clicked事件 this.triggerevent(clicked!)
end if
(3)【重置】按钮cb_3的clicked的事件脚本如下 sle_1.text=\sle_2.text=\
还为此按钮自定义了U_keydown1事件,事件代码如下 if keydown(keyenter!) then
//如果按了Enter键,则出发Clicked事件 this.triggerevent(clicked!)
end if
(4)【安全退出】按钮cb_1的clicked事件代码如下 close(parent)
4.3.2设计密码修改窗口
密码修改窗口如图4.2所示
图4.2密码修改窗口 1)创建窗口并设置属性
创建登录窗口(w_mima),并调整其大小,在窗口上放置一个图片控件(p_1、三个静态文本框控件(st_1、st_2、st_3)、三个单行编辑器控件(sle_1、sle_2、sle_3)、两个命令按钮控件(cb_1、cb_2),各控件的位置和大小参照图4.1调整。其他需
要修改的属性见表4—2,表中未列出的属性保留其默认值。 表4—2密码修改 对象 W_mima P_1 St_1 St_2 St_3 Sle_1 Sle_2 Sle_3 Cb_1 Cb_2 2)编写脚本
(1)【确定修改】按钮cb_1的clicked事件的脚本如下 string pw string q string userid
ls_username=sle_1.text select password,qx into :pw,:q from users
where id=:ls_username; if ls_password<>sle_1.text then
messagebox(\提示\输入的旧密码不对!\\n 请重新输入!\sle_1.text=\sle_1.setfocus()
属性 Title Windowtype Picturename Text Alignment Text Alignment Text Alignment Text Text Text Text Text 取值 修改密码 Response! QQ截图20111023094902.gif 原密码: Center! 新密码: Center! 重新输入新密码: Center! “” “” “” 确定修改 放弃修改 else
if sle_2.text<>sle_3.text then
messagebox(\提示\两次输入的新密码不相同!请重新输入!\ sle_3.setfocus() update users sle_3.text=\ else
set password=:sle_2.text
where id=:ls_username and password=:ls_password; if sqlca.sqlcode<>0 then
messagebox(\提示\密码修改不成功!\ close(parent)
messagebox(\提示\密码修改完成\ else
end if end if end if
(2)【重置】按钮cb_2的clicked的事件脚本如下 close(parent)
4.3.3设计用户管理窗口
用户管理窗口如图4.3所示
图4.3用户管理窗口 1)创建数据窗口对象 创建数据窗口“d_yonghuguanli”,显示风格为“Grid”,数据源的类型为“QuickSelect”,布局如图4.4所示。其中列控件“qx”的编辑风格改为“DropDownListBox” ,其中列控件“password”的password属性值设为true,码表如图4.4所示