首页 > 代码库 > PowerBuilder创建登录实例—你的心我终于懂了(二)

PowerBuilder创建登录实例—你的心我终于懂了(二)

三、登录例子后期实践

      1、 创建应用对象

      (1)选择file\new,或者快捷键Ctrl+N,新建Workspace工作空间,如下图,点击OK,然后命名为testSpace.

                                                         技术分享

      (2)同以上方法一样, 新建Traget\Application应用程序库,点击Ok

                                技术分享

得到下图后,填写库名testapplication和相应的路径,然后点击Finish完成。

                                     技术分享

 

      2、 创建第一个窗口(登录窗口)

      (1)选择file\new,或者快捷键Ctrl+N,新建PB Object\Window窗体,然后点击ok.即创建好窗体,然后添加控件

                                 技术分享

      (2)按下图操作摆放相应控件

                              技术分享

设置好之后,保存,输入窗体的名称frm_log,最终得到登录窗体的样子

                                       技术分享


      3、 创建数据窗口对象(该步可跳过

      (1)选择file\new,或者快捷键Ctrl+N,新建DataWindow\Grid项

                                  技术分享

      (2)得到下图后,选择Sql select 数据源类型

                                     技术分享

      (3)然后得到下图,选择已经创建的表,然后点击open

                                                          技术分享

      (4)然后按下图选中后,右击选择Select All

                                                           技术分享

      (5)最后选择保存,命名为testdw.完成

                                                       技术分享

 

      4、创建一个数据窗口控件(该步可跳过

      (1)选择file\new,或者快捷键Ctrl+N,新建DataWindow\Grid项【同第3步的(1)】

      (2)这次选择Quick Select项

                             技术分享

      (3)如下图,选择user_info,然后单击AddAll,然后单击OK

                                技术分享

      (3)得到后边的窗体之后,直接点Next,然后Finish。完成后保存,命名为testdatawindow.

      5、 建立应用程序

      (1)编写open事件代码,如下图,在建好的项目中双击testapplication

                                                                    技术分享

得到下图,后选择open事件,编写代码

                   技术分享

      (2)寻找需要编写的代码。选择菜单栏中的Tools\DataBasePainter,或者直接单击下图中的DataBase按钮                               技术分享

得到下图后,选择ODBC\Testdatabase,然后右击,选择Properties

                                            技术分享

得到下图,选择Preview选择框,单击Copy,然后Ok

                                             技术分享

最后再次打开open事件,将拷贝的代码粘贴到上面,并补充一些代码,最后代码如下

// Profile Testdatabase
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Connectstring='DSN=testDataBase'"

//添加以下代码,注意分号是英文状态,否则报错
connect;
open(frm_log)

      (2)编写登录代码。在窗体上双击登录按钮,或直接选择下图中的itemchanged(此项在窗体最下方)

                                                技术分享
 然后选择登录按钮的单击事件

                                 技术分享
      (3)编写登录按钮的代码,如下

//登录
string userName,userPwd                       //声明用户名和密码变量

userName=trim(sle_name.text)                  //得到用户名
userPwd=trim(sle_pwd.text)                    //得到密码

if userName ="" then                          //判断用户名是否为空
	messagebox("提示","用户名不能为空")
else
	
	//判断该用户是否存在
	//sql语句进行查询
	SELECT name
	into :userName
	from "User_Info" 
	where "User_Info"."name"=:userName;
	
	//SQLCode=100证明没有找到记录,此用户不存在  
	if SQLCA.SQLCode=100 then  
		messagebox("提示","用户不存在")
	else
		//该用户存在查询密码是否正确
		
		SELECT name
		into :userName
		from "User_Info" 
		where "User_Info"."name"=:userName and "User_Info"."password"=:userPwd;
			
		if SQLCA.SQLCode=100 then  
			messagebox("提示","密码不正确")
		else
			messagebox("提示","登录成功")
		end if
	end if
end if
      (4)编写退出按钮的代码,如下
//关闭该窗体
close(parent)

      6、运行应用程序

          保存所有操作,然后按快捷键Ctrl+R。这里就不给大家展示效果图了,由于我们在数据表中存储的用户名和密码都是“1”,所以只有用户名和密码都为“1”才会会成功。


小编寄语:

         我们的这个简单的登录功能终于写完了,由于第一次使用PB,对其功能不太了解,所以操作步骤写的比较详细,但是本程序有一个缺点就是在第三步和第四步中,创建了数据窗口对象,到最后却没有用到(实际上这块儿也用不到),感觉有点多余,本来想去掉那部分,可是不知道数据窗口对象有没有发挥作用,所以就留下来了,希望在之后的学习过程中会对这部分有更深入的理解。


相关阅读:PowerBuilder完全实例

                  powerbuilder初试——揭开那层薄纱



PowerBuilder创建登录实例—你的心我终于懂了(二)