您的位置: 网站首页 > 程序开发 > Visaul FoxPro程序设计 > 第8章 表单与控件设计 > 【8.4.2 标签、文本框和命令按钮(组)的使用】

8.4.2 标签、文本框和命令按钮(组)的使用

 

8.4.2  标签、文本框和命令按钮(组)的使用

1.标签

标签(Label 用于保存一段固定文本,它本身没有数据处理的功能,只用于显示,所以无法用鼠标来获得焦点,也不能用Tab键选择它。只要把显示的字符串直接赋给标签的标题(Caption)属性即可。使用标签显示的文本一般是单行的,如果需要也可设成多行。在程序中可以改变标签的Caption Visible属性,便于显示不同的内容。

8-5所示列出了在设计时常用的标签属性。

8-5  常用的标签属性

   

   

AutoSize

标签是否能根据显示内容自动调整大小

BackColor

设置标签控件的背景颜色

BackStyle

确定标签是否透明

Caption

标签显示的文本

ForeColor

设置标签控件的前景颜色

FontName

指定标签中显示文本的字体名

FontSize

指定标签中显示文本的字体大小

Name

指定在代码中引用标签控件时所用的名称

WordWrap

确定标签上显示的文本能否换行

【例8-1制作Splash界面,运行效果如图8-20所示。

8-20  表单运行效果

在应用程序的启动过程中,一般都有一个Splash画面用于显示系统名称、版权信息等,该画面在应用程序启动后自动消失。

其具体操作步骤如下:

1)单击菜单“文件”“新建”命令,在弹出的对话框中选中“表单”选项,然后单击“新建”图形按钮,进入表单设计器。

在“属性”窗口中,分别设置表单的属性为:

·    AutoCenter.T.—真。

·    BorderStyle2—固定对话框。

·    BackColor0,128,255

·    TitleBar0—关闭。

2)在表单的合适位置建立标签显示系统标题。

在“表单控件”工具栏上单击“标签”控件,然后在表单上单击,则默认建立了一个标签控件Label1,调整其位置和大小。

其标签控件Label1属性设置为:

·    AutoSize.T.—真。

·    BackStaly0—透明。

·    Caption:正通科技管理系统。

·    FontName:华文新魏。

·    FontSize25

·    ForeColor255,255,0(黄色)。

·    NameLabel1

3)在表单上再建立一个标签Label2,用于显示版权信息。

其标签控件Label2属性设置为:

·    AutoSize.T.—真。

·    BackStaly0—透明。

·    Caption:版权所有(C  正通科技  2006-2007

·    FontName:宋体。

·    FontSize10

·    ForeColor255,255,0(黄色)。

·    NameLabel2

4)双击Form1表单,将打开“代码”窗口,在“过程”列表框中选择“Click”事件,然后在下侧的窗口中输入相应的代码,如图8-21所示。

8-21  编辑Click事件的代码

5)保存表单为“例8-1,然后单击“常用”工具栏的“运行”按钮,其结果如图8-20所示,此时单击表单,则该表单即刻关闭。

2.文本框

文本框(TextBox是一类基本控件,用于在运行时显示用户输入的信息。与标签控件不同的是,文本框有自己的数据源,通常是以表的一个非备注字段或一个内存变量作为自己的数据源。文本框是一个非常灵活的数据输入工具,可以输入单行文本,也可以输入多行文本。

添加文本框控件的方法与添加标签控件类似,其常用属性见表8-6

8-6  文本框的常用属性

 

   

Alignment

文本框中的内容是左对齐、右对齐、居中还是自动对齐。自动对齐取决于数据类型。例如,数值型右对齐,字符型左对齐

ControlSource

在文本框中显示表字段或变量的值

Enable

.T.时,可选中文本框;为.F.时,不能选中文本框

InputMask

指定每个字符输入时必须遵守的规则。有关InputMask 的详细内容,请参阅“帮助”

Format

设置该控件输入与显示的文本格式

PasswordChar

设置在用户输入口令时显示的字符

ReadOnly

设置文本框的文本是否只读

SelectOnEntry

当文本框得到焦点时是否自动选中文本框中的内容

TabStop

是否能用Tab 键选择该控件。如果TabStop 设置为“.F.”,仍能用单击的方法选择该文本框

Value

文本框中的值

如果设置了文本框的ControlSource属性,则显示在文本框中的值将保存在文本框的Value 属性中,同时保存在ControlSource属性指定的变量或字段中。

8-7所列为文本框的常用方法和事件。

8-7  文本框的常用方法和事件

方法和事件

   

ReFresh方法

更新数据绑定内容

SetFocus方法

将该控件设置为焦点

GotFocus事件

通过用户操作或执行程序代码使该对象接收到焦点时触发的事件

Init事件

当该控件被创建时触发的事件

LostFocus事件

当光标离开,控件失去焦点时触发的事件

When事件

接收焦点之前发生,即当试图把焦点移动到控件上时触发该事件

对文本框各项属性的设置,还可以通过文本框生成器来进行。要使用文本框生成器,首先在表单的文本框上单击右键,然后在快捷菜单上选择“生成器”命令,弹出“文本框生成器”对话框,如图8-22所示。在该对话框中选择合适的选项,最后单击“确定”按钮。

8-22  “文本框生成器”对话框

文本框生成器的“1.格式”选项卡用于指定文本框的各种格式选项,以及输入掩码的类型;“2.样式”选项卡可以指定文本框的外观、边框和字符对齐方式,如图8-23所示;“3.值”选项卡用来指定存贮文本框值的字段,如图8-24所示。

     

8-23  2.样式”选项卡                  8-24  3.值”选项卡

【例8-2制作系统登录界面,运行效果如图8-25所示。

8-25  表单运行效果

其具体操作步骤如下。

1)新建一个表单,并设置表单的大小,其表单的属性设置为:

·    AutoCenter.T.—真。

·    BorderStyle2—固定对话框。

·    Caption:登录。

·    Height150

·    Width300

2)在表单的相应位置建立“操作员:”和“密  码:”两个标签,用前面介绍的方法对各标签进行相应的设置。

3)在表单的相应位置建立Text1文本框,用于输入用户名,其文本框Text1控件的主要属性设置为:

·    ValueUser

4)双击Text1文本框,将打开“代码”窗口,在“过程”列表框中选择“When”事件,然后在下侧的窗口中输入相应的代码,如图8-26所示。

8-26  编辑When事件的代码

5)在表单的相应位置建立Text2文本框,用于输入密码,文本框Text2控件的主要属性设置为:

·    PasswordChar*

·    InputMaskAAAAAAAA

·    SelectOnEntry.T.—真。

·    ValuePass

6)保存表单为“例8-2并运行,其结果如图8-25所示。

3.命令按钮

在表单中可以建立一个命令按钮控件Command),用于执行命令。这是表单中使用十分频繁的一个控件,一般都是将特定操作代码放置在命令按钮的Click事件中。

8-8列出了命令按钮的常用属性。

8-8  命令按钮的常用属性

 

     

Cancel

指定当用户按下Esc键时,执行与命令按钮的Click事件相关的代码

Caption

在按钮上显示的文本

DisabledPicture

当按钮失效时,显示的.bmp 文件

DownPicture

当按钮按下时,显示的.bmp 文件

Enabled

能否选择此按钮

Picture

设置在按钮上的.bmp 文件

ToolTipText

设置命令按钮的文本提示信息

8-9所列为命令按钮的常用事件。

8-9  命令按钮的常用事件

 

     

Click

当用户单击命令按钮时触发该事件

DrapDrop

当完成拖放操作时触发该事件

DrapOver

当该命令按钮拖过目标对象时触发该事件

KeyPress

当用户按下并释放某个键时触发该事件

MouseDown

当用户按下一个鼠标键时触发该事件

RightClick

当用户右击鼠标键时触发该事件

如果将命令按钮的Default属性设置为“真”(.T.),可使该命令按钮成为默认选择,那么按Enter键后,将执行这个命令按钮的Click事件。

如果将命令按钮的Default属性设置为“假”(.F.),可使该命令按钮成为“取消”按钮,那么按Esc键后,将执行这个命令按钮的Click事件。

【例8-3接着前面“例8-2,完善系统登录界面的制作,运行效果如图8-27和图8-28所示。

            

8-27  输入错误密码                           8-28  输入正确密码

其具体操作步骤如下:

1)打开表单“例8-2

2在表单的合适位置建立命令按钮“登录”,其“登录”按钮控件的主要属性设置为:

·    Caption:登  录。

·    Default.T.—真。

·    NameCommand1

3在表单的合适位置建立“退出”命令按钮,其“退出”按钮控件的主要属性设置为:

·    Caption:退  出。

·    NameCommand2

4)编辑Command1(登录)对象的Click事件代码,代码如下:

IF thisform.Text1.Value="SYSTEM" AND thisform.Text2.Value="SBIHC"

MESSAGEBOX("系统登录成功!")   &&执行进入主系统代码

ELSE

MESSAGEBOX("用户名或密码错误,退出系统!")

ENDIF

THISFORM.RELEASE

5)编辑Command2(退出)对象的Click事件代码,代码如下:

THISFORM.RELEASE

6)保存表单为“例8-3并运行,其结果如图8-27和图8-28所示。

4.命令按钮组

命令按钮组控件(CommandGroup是指将命令按钮组合在一起,这样既可单独操作,也可作为一个组来统一操作。命令按钮组能把执行一系列相关操作的命令按钮编成一组,把公共代码放在组内的同一个方法中。

8-10所列为命令按钮组的常用属性。

8-10  命令按钮组常用属性

   

   

ButtonCount

组中命令按钮的数目

BackStyle

命令按钮组是否具有透明或不透明的背景。一个透明的背景与组下面的对象颜色相同,通常是表单或页面的颜色

要让组中所有命令按钮的Click事件代码都用同一个程序过程,可将代码加入命令按钮组的Click事件代码中。命令按钮组的Value属性指明了单击哪个按钮。

【例8-4利用生成器功能建立一个命令按钮组,运行效果如图8-29所示。

8-29  建立的命令按钮组

其具体操作步骤如下:

1)新建一个表单,并设置表单的属性,如下所示。

·    AutoCenter.T.—真。

·    Caption:浏览记录。

2)单击菜单“表单”→“快速表单”命令,将弹出“表单生成器”窗口。将“学生基本资料”数据表中的所有字段添加到“选定字段”列表框中,单击“2.样式”选项卡,在其中选择样式为“浮雕式”选项,如图8-30所示。

  

8-30  表单生成器

3)单击“确定”按钮,此时将在表单中生成快速表单,如图8-31所示。

8-31  生成的快速表单

4)依次选择每个标签控件,然后分别修改其Caption属性,其修改后的效果如图8-32所示。

8-32  修改标签的标题

5)选择表单中的所有标签和文本框,向下移动一定距离,然后在其上侧添加一个标签控件,并设置标签控件的相应属性,其效果如图8-33所示。

8-33  添加的标签控件

6)在表单的下侧添加一个命令按钮组控件,右击该控件,从弹出的快捷菜单中选择“生成器”命令,将弹出“命令组生成器”对话框,然后进行相应的设置,如图8-34所示。

  

8-34  命令组生成器

7)单击“确定”按钮,其表单效果如图8-35所示。

8-35  生成的命令按钮组

8)保存表单为“例8-4并运行,其结果如图8-29所示。