计算机技术联盟
Would you like to react to this message? Create an account in a few clicks or log in to continue.

VB教程(第二章)

2 posters

向下

VB教程(第二章) Empty VB教程(第二章)

帖子 由 網絡晨曦 周日 三月 09, 2008 9:58 am

第一节——Label 控件

在第一章,我们已经知道,任何一个 VB 程序都是由操作界面及与之相应的程序代码组成,而操作界面则是由诸如“命令按钮控件”、“标签控件”等控件以及窗体共同组成。从本章开始,我们进入控件的学习过程。

Label(标签控件)是图形控件,主要作用在于显示文字信息,如大家比较熟悉的程序安装界面:在某个软件安装过程中,常常会显示一些帮助信息或与产品相关的介绍信息,而这些,大多是用标签控件制成的。

与以后我们要学到的文本框控件(TextBox)不同的是,标签控件显示的文字不能直接进行修改,要修改的话只能在设计阶段进行;文本框既可以用来显示文本,还能够在文本框中输入文本。

在 Visual Basic 工具箱中,标签控件的图标如图一所示。标签的默认名称(Name)和标题(Caption)为 LabelX(X为1、2、3,等等),规范的命名方式为:LblX(X为自己定义的詞,如 LblShow 、LblRed ,等等)
VB教程(第二章) 20041215071655184
图一


一、标签控件的主要属性:
1、Caption(标题)属性:
此属性用来设置在标签上显示的文本信息,可以在创建界面时设置,也可以在程序中改变文本信息,如第一章的例子中,通过点击按钮改变标签显示的字样。

如果要在程序中修改标题属性,代码规则如下:

标签名称.Caption = "欲显示的文本"

如第一章在程序中改变标签 LblShow 的 Caption 属性:

LblShow.Caption = "跟我来学 VB 神童教程"

但是请大家注意,上面的代码应该写入供触发的控件对应的程序代码区,如第一章中,是在命令按钮的程序代码区输入的代码,而不是标签本身的代码区哟。

这也是初学者常常大惑不解的地方,为什么我要让标签改变字样,却要在其他控件中输入代码?这是因为,我们是通过触发其他控件这个事件来让标签改变 Caption 属性的。

当然,你也可以让标签本身来触发 Caption 属性改变事件,如用鼠标点击标签,这时你就需要在标签对应的程序代码区输入代码了,但在实际编写中,这种情况非常罕见。毕竟,标签控件用于显示信息的本意远远超过了响应鼠标点击的意图。

2、BorderStyle(边框)属性:
本属性用来设置标签的边框类型,有两种值可选:0,代表标签无边框;1,代表标签有边框,并且具有三维效果,如图二显示的两个标签:
VB教程(第二章) 20041215071656415
图二


BorderStyle 属性可以在设计界面时指定,如图三:
VB教程(第二章) 20041215071656441
图三


也可以在程序中改变(但这种应用不多见),程序代码规则:

标签名.BorderStyle = 0/1(0或1,两者取一)

习题一:创建一个标签(LblShow)、两个按钮(CmdChange1、CmdChange2),点按 CmdChange1 ,标签有边框;点按 CmdChange2 ,标签无边框。

联想:在完成本题后,你可能会想到,有没有办法用一个按钮来完成本题的功能?即鼠标点击一下,标签有边框,再点一下,标签边框消除,再点一下,边框又出现,以此类推。回答是肯定的,不过,这是在以后的学习中要讲的。

答案:见本节最后的答案区。

3、Font(字体)属性:
本属性用来设置标签显示的字体,既可以在创建界面时设定,也可以在程序中改变。

在创建界面时设定,如图四:
VB教程(第二章) 20041215071656909
图四


在图四的设置界面中,除了可以选择字体,还可以设置显示文字是否为粗体、斜体、下划线等。

在程序中改变 Font 属性,程序代码书写规则如下:

字体改变:标签名.FontName = "字体类型",其中,“字体类型”可以是中文,如“宋体”、“隶书”;也可以是英文名,如“Arial”、“Times New Roman”,等等,不过,这些字体名称必须是电脑上有的。

字体大小改变:标签名.FontSize = X ,其中,X 是阿拉伯数字,代表字体是几号字。如:LblShow.FontSize = 11 。

粗体(FontBold)、斜体(FontItalic)、下划线(FontUnderline)、删除线(FontStrikethru)属性的设置值是代表真/假的逻辑判断值 True/False ,如下:

LblShow.FontBold = True/False
LblShow.FontItalic = True/False

习题二:一个标签(LblShow)用于显示文本;按钮1(Cmd1)可以让标签显示的字体变成隶书;按钮2(Cmd2)可以让标签显示的字体变成 13 号字;按钮3(Cmd3)可以让字体变成粗体。

答案:见本节最后的答案区。

4、Alignment(对齐)属性:
此属性用来设置标签上显示的文本的对齐方式,分别是:左对齐,0;右对齐,1;居中显示,2。可以在界面设置时设定,如图五:
VB教程(第二章) 20041215071656408
图五


也可以在程序中改变,代码如下:

标签名.Alignment = 0/1/2

5、Visible(可见)属性:
本属性在大多数控件中都有,它能设定该控件是否可见。当值为 True ,控件可见;当值为 False ,控件隐藏。

控件的可见属性可以在界面设置时设定,如图六:
VB教程(第二章) 20041215071656473
图六


也可以在程序中改变,代码如下:

标签名.Visible = True/False

习题三:一个标签(LblShow),在界面设置时为可见;按钮1(Cmd1),能够让标签隐藏;按钮2(Cmd2),能够让标签显现。

答案:见本节最后的答案区

二、标签控件(Label)的主要事件:
所谓的事件,其实就是用户对应用程序的操作,如第一章中用鼠标点击命令按钮触发的 Click 事件。

事件的作用在于触发程序的执行,如第一章中的 Click 事件改变了标签控件的 Caption 属性。

标签控件的主要作用在于显示文本信息,但也支持一些为数不多的事件。

1、Click 事件(鼠标单击):
用鼠标点击标签时触发的事件,如改变标签的字体属性:

Private Sub LblShow_Click()
LblShow.FontName = "隶书"
End Sub

2、DbClick 事件(鼠标双击):
鼠标双击引发的事件,如改变标签的可见性:

Private Sub LblShow_DbClick()
LblShow.Visible = False
End Sub

三、知识点:
1、
用 VB 编写程序犹如搭积木,把每块“积木”(控件或其他对象)放在合理的位置,然后以某种机制(程序)将这些“积木”们运用起来,最后就搭成了我们需要的东西。所以,掌握每一种控件,包括它们的属性与主要事件,是我们学习编程的基础!

2、某些属性是大多数控件所共有的,如 Name 、FontBold、FontItalic、Visible ,等等;但也有些属性是某个控件所独有的,如标签控件的 WordWrap (标签的标题显示方式)。本节中我们只是讲述了部分标签控件的属性,其他属性可以在 VB 的帮助文件中查找到。

3、大家在学习过程中一定会疑惑,为什么在属性设置时,“=” 右边有时使用 "" ,有时又不使用 "" 。不知大家注意到没有,我们在使用 "" 时,是因为引号里面的内容是字符串,如"隶书"、"Times New Roman",等等。

4、字符的大小写问题:初学者还常常疑惑,字母什么时候应该大写,什么时候应该小写?其实,大写小写在 VB 程序中都是一样的,但为了让程序编写得更为规范,程序可读性更高,英文单词的第一个字母一般都要大写,如 Visible 、Name ,等等;

控件的命名也遵循以上原则,不同的是,命名都是由“控件类型名+具体名字”组成的,控件类型名的第一个字母要大写,具体名字的第一个字母要大写,如 LblShow 、CmdShow 、LblChange ,等等。

5、程序代码的规范:上面有这样的例子:
Private Sub CmdShow_Click()
LblShow.Caption = "跟我来学 VB 神童教程"
End Sub

Private Sub CmdShow_Click()代表一个过程,共由两部分组成,CmdShow 代表 CmdShow 这个按钮,Click 代表这个按钮的触发事件。

以此类推,Private Sub LblShow_DbClick ()也代表一个过程,LblShow 是个标签,DbClick 是双击事件。

另外,Private 意为“私有”,表明这个事件过程的类型;此外还有 Public 即“公有”事件。

Sub 表明这个过程是“子程序”,若干个“子程序”共同组成最终的应用程序。

()里面是用来装参数的,关于参数,我们以后讲述,如果没有参数,()里面为空。

四、答案区:
第一题:

第一个按钮的点击事件:
Private Sub CmdChange1_Click()
LblShow.BorderStyle = 1
End Sub

第二个按钮的点击事件:
Private Sub CmdChange2_Click()
LblShow.BorderStyle = 0
End Sub

第二题:

按钮1:
Private Sub Cmd1_Click()
LblShow.FontName = "隶书"
End Sub

按钮2:
Private Sub Cmd2_Click()
LblShow.FontSize = 13
End Sub

按钮3:
Private Sub Cmd3_Click()
LblShow.FontBold = True
End Sub

第三题:

按钮1:
Private Sub Cmd1_Click()
LblShow.Visible = False
End Sub

按钮2:
Private Sub Cmd2_Click()
LblShow.Visible = True
End Sub
[1] [2] 下一页







第二节——TextBox控件

在 Visual Basic 操作界面中,TextBox(文本框)控件所代表的图标如图一:
VB教程(第二章) 20041215071656938
图一


TextBox 控件主要用来显示文本或用来输入文本,如 Windows 登陆时的“口令”窗口,或者记事本的整个编辑区域。

双击工具箱中的文本框控件或者单击文本控件,然后用鼠标在 VB 的工作区域拖拉,就可以创建文本框了。如图二:
VB教程(第二章) 20041215071656334
图二


文本框控件的默认名称为 TextX(X为 1、2、3,等等),命名规则为 TxtX(X为用户自定义的名字,如 TxtShow、TxtFont、TxtColor ,等等)

一、文本框控件的主要属性:
1、Text(文本)属性:
本控件最重要的属性,用来显示文本框中的文本内容,可以在界面设置时指定,如图三:
VB教程(第二章) 20041215071656485
图三


也可以在程序中动态修改,程序代码规则:

文本框控件名.Text = "欲显示的文本内容"

如要在一个名为 TxtFont 的文本框控件中显示“隶书”字样,那么输入代码:

TxtFont.Text = "隶书"

习题一:创建一个文本框(TxtContent)用来显示文本;按钮一(Cmd1),点击时文本框内容变为“跟我来学VB神童教程”;按钮二(Cmd2),点击时文本框内容清空(也就是没有内容)。

答案:见答案区。

2、SelText(选中文本)属性:
本属性返回或设置当前所选文本的字符串,如果没有选中的字符,那么返回值为空字符串即""。

请注意,本属性的结果是个返回值,或为空,或为选中的文本。

一般来说,选中文本属性跟文件复制、剪切等剪贴板(在 VB 中,剪贴板用 Clipboard 表示)操作有关,如要将文本框选中的文本拷贝到剪贴板上:

Clipboard.SetText 文本框名称.SelText(注意,本行没有表示赋值的等号。)

要将剪贴板上的文本粘贴到文本框内:

文本框名称.SelText = Clipboard.GetText(注意,本行有表示赋值的等号。)

例:一个文本框(TxtContent),按钮一(CmdCopy)用于复制文本框中的选中文本;按钮二(CmdPaste)用于将剪贴板上的内容粘贴到文本框内。

按钮一:
Private Sub CmdCopy_Click()
Clipboard.SetText TxtContent.SelText
End Sub

按钮二:
Private Sub CmdPaste_Click()
TxtContent.SelText = Clipboard.GetText
End Sub

3、SelStart 与 SelLength 属性:
SelStart ,选中文本的起始位置,返回的是选中文本的第一个字符的位置。
SelLength ,选中文本的长度,返回的是选中文本的字符串个数。 例如:文本框 TxtContent 中有内容如下:

跟我一起学习 VB 神童教程

假设选中“一起学习”四个字,那么,SelStart 为 3 ,SelLength 为 4 。

4、MaxLength(最大长度)属性:
本属性限制了文本框中可以输入字符个数的最大限度,默认为 0 ,表示在文本框所能容纳的字符数之内没有限制,文本框所能容纳的字符个数是 64K ,如果超过这个范围,则应该用其他控件来代替文本框控件。

这跟 Windows 中用记事本打开文件一样,当文件过大,系统会自动调用写字板来打开文件,而不是用记事本。

文本框控件 MaxLength 属性既可以在界面设置过程中予以指定,如图四:
VB教程(第二章) 20041215071656703
图四


也可以在设计时予以改变,代码如下:
文本框控件名.Maxlength = X(X为阿拉伯数字,如 10、20、57,等等)。

5、MultiLine(多行)属性:
本属性决定了文本框是否可以显示或输入多行文本,当值为 True ,文本框可以容纳多行文本;当值为 False ,文本框则只能容纳单行文本。

本属性只能在界面设置时指定,程序运行时不能加以改变。如图五:
VB教程(第二章) 20041215071656712
图五


6、PasswordChar(密码)属性:
本属性主要用来作为口令功能进行使用。例如,若希望在密码框中显示星号,则可在“属性”窗口中将 PasswordChar 属性指定为 “*” 。这时,无论用户输入什么字符,文本框中都显示星号。如图六:
VB教程(第二章) 20041215071656136
图六


在 VB 中,PasswordChar 属性的默认符号是星号,但你也可以指定为其他符号。但请注意,如果文本框控件的 MultiLine(多行)属性为 True ,那么文本框控件的 PasswordChar 属性将不起作用。

<FONT
網絡晨曦
網絡晨曦
三军统帅
三军统帅

帖子数 : 128
年龄 : 35
注册日期 : 08-03-07

http://hi.baidu.com/%CD%F8%C2%E7%B3%BF%EA%D8

返回页首 向下

VB教程(第二章) Empty 回复: VB教程(第二章)

帖子 由 SamuelFisher 周五 四月 11, 2008 5:08 am

说label控件我补充下,大家可以用两个透明的label控件,且前景颜色不相同的情况下,把两个label控件稍微错开几像数,你会发现字体效果会变成立体的哦.啥就艺术?这就是!! Very Happy

SamuelFisher
列兵
列兵

帖子数 : 32
年龄 : 36
注册日期 : 08-03-15

返回页首 向下

返回页首


 
您在这个论坛的权限:
不能在这个论坛回复主题