Go homepage(回首页) Upload pictures (上传图片) Write articles (发文字帖)
The author:(作者)aaapublished in(发表于) 2014/7/19 0:14:23 使用Delphi组件编程
使用Delphi组件编程通过前面的内容,读者大致地了解了Delphi 的组件及组件的属性、方法和事件,为了使用户可以熟练应用属性、方法和事件进行编程,下面将以编写一个“登录对话框”的示例程序,向读者详细介绍3 个重要概念的含义。经过此程序的学习,相信读者在Delphi 中可以利用组件的属性、事件和方法进行组合使用并编写程序了。示例功能登录窗体是在操作员使用应用程序前,验证操作员是不是授权用户的窗体。通常提示用户输入用户名和密码,然后将操作员输入的密码同预设的密码进行比较,如果操作员输入的密码正确,则允许操作员登录应用程序;如果密码与内置密码不同,则显示出错信息。要实现上述功能,首先要解决以下几个问题。1.用户名和密码的存储问题一般来讲,操作员的用户名和密码都保存在数据库或指定的“结构”中。为了增强系统的保密性,在保存这些信息前,要进行一定的加密运算(如MD5 加密算法等),然后再保存。由于本例只是向读者介绍如何配合使用属性、方法和事件去编写应用程序,因此将操作员的用户名和密码直接写在代码中。2.输入密码时保密的问题当操作员输入密码时,不允许旁边的其他人看到输入密码的内容,一般的Windows 应用程序都是以“*”代替操作员输入的密码。文本框有一个PasswordChar,该属性决定文本框接受操作员输入信息时,以哪个字符隐藏输入内容。只要将文本框的PasswordChar 属性改为“*”,在操作员输入密码时,文本框中的内容自动被转换成“*”。3.判断输入密码是否正确的问题当操作员输入用户名和密码时,单击“登录”按钮,系统将判断输入的密码是否正确。读者不难发现,判断用户输入密码是否正确的代码应该在单击“登录”按钮时执行,因此,这段代码应放在“登录”按钮的OnClick 事件中;在判断操作员输入密码是否正确时,还应先取出操作员输入的用户名和密码,这时可以读取文本框的Text 属性中数据。4.方便用户操作的问题当操作员输入完用户名后,接下来将输入密码,大部分人都习惯输入完用户名后按回车键。因此,当用户在“用户名”文本框中输入回车键时,应该将光标移动到“密码”文本框中。可以通过在“用户名”文本框的OnKeyDown 事件中判断输入的字符是不是回车键。OnKeyDown 事件中的代码是在用户向文本框中输入字符时执行的。因此,只要判断键盘输入字符的ASCII 是否等于13(即回车键的ASCII 值),就可以判断出用户是否输入回车键;当用户输入回车键时,可以使用“密码”文本框的Setfocus 方法将光标移动到“密码文本框”中。通过上面的分析,读者就不难理解属性、方法和事件这3 个重要概念了。通俗地讲,属性主要用来决定组件的外观(如颜色、字体大小等),并保存组件中常用的数值(如文本框中的内容),通过改变组件的属性,可以改变组件对外的表现形式;事件是组件Delphi 组件已经定义好,当满足某些条件时自动执行程序员预定代码的一个动作;而方法则是组件本身固有的功能,当调用组件的某个方法时,可以完成指定的操作。方法与事件的最大区别有两点:一是触发条件不同。事件是自动触发的,而方法是用户编程触发的;二是代码是不是可修改。事件的代码允许程序员修改,而方法是封装在组件内的代码,程序员不能修改方法的代码。有了上面的基础,也就不难理解本示例的具体代码了。下面将向读者详细介绍“登录”窗体的详细创建步骤。
赞