• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

VB 神童教程第四章第二节——综合示例七

发布: 2007-6-21 21:57 | 作者:   | 来源:   | 查看: 15次 | 进入软件测试论坛讨论

领测软件测试网

   

有如图一这样一个小程序,通过“菜单”下的色彩设置,可以将窗体的背景分别改为“红”、“绿”、“蓝”色,点击“菜单”下的“退出”,则自动退出程序。

VB 神童教程第四章第二节——综合示例七(图一)


图一

一、界面设置:
根据第一节学到的知识,我们制作一个如图二的菜单。

VB 神童教程第四章第二节——综合示例七(图二)
图二

需要注意的是,“菜单”为一级,“色彩设置”、“退出”为二级、“红色”、“绿色”、“蓝色”为三级菜单,根据图二中每行前面点的多少可以判断出来。

另外,不要忘记勾选“红”、“绿”、“蓝”三种色彩的菜单前的“复选”选项。

二、输入程序代码:
1、退出菜单:
在 VB 中,End 是专门用来退出程序的命令,因此,我们在“退出菜单”中输入如下代码:

Private Sub MenuQuit_Click()
End
End Sub

这样,只要点击本菜单,自动退出程序。

2、复选菜单的判断:
在 VB 中,可以用如下语法对复选菜单进行判断:

复选菜单名.Checked = True/False

当值为 True ,复选菜单被选中;值为 False ,菜单未被选中。

3、我们要让程序在初始状态下保持本色,在 Form 的装入事件中输入以下代码:

Private Sub Form_Load()
MenuRed.Checked = False
MenuGreen.Checked = False
MenuBlue.Checked = False
End Sub

这段程序,让三个复选菜单都处于未被选中状态(在程序运行时起作用,在设计过程中,三个复选菜单始终是处于选中状态)。

4、当按下红色菜单(MenuRed):

Private Sub MenuRed_Click()
MenuRed.Checked = True
MenuGreen.Checked = False
MenuBlue.Checked = False
Form1.BackColor = vbRed
End Sub

这段代码,让“红色菜单”处于选中状态,而其他颜色的菜单处于未被选中状态,同时将窗体的背景色变为红色(VbRed)。

5、当按下绿色菜单(MenuGreen):

Private Sub MenuGreen_Click()
MenuRed.Checked = False
MenuGreen.Checked = True
MenuBlue.Checked = False
Form1.BackColor = vbGreen
End Sub

绿色菜单处于选中状态,其他菜单非选中,同时窗体背景色变为绿色。

6、按下蓝色菜单:

Private Sub MenuBlue_Click()
MenuRed.Checked = False
MenuGreen.Checked = False
MenuBlue.Checked = True
Form1.BackColor = vbBlue
End Sub

蓝色菜单处于选中状态,其他菜单非选中,同时窗体背景变为蓝色。

7、最后按 F5 键,如何,程序正常运行了吧?

三、联想:
本节我们讲到复选菜单是如何对选中进行判断的,那就是看 Checked 值是否为 True 。

前面我们学过单选按钮(OptionBUtton)、复选按钮(CheckBox),它们也有是否被选中的判断,那么,它们有什么不同呢?

注意,单选按钮是否选中的判断:
单选按钮名.Value = True/False 。由于单选按钮只能二选一或多选一,所以往往不需判断,只需响应 Click 事件就行了。

复选按钮的判断:

复选按钮名.Value = 0/1/2 。由于复选按钮可以一次多选,所以对它的判断最为复杂,常常需要用到诸如 If……Then 等条件语句进行判断。但它跟复选菜单不同的是,复选菜单常常只能多中选一,比如上面例子中,选择了“红色菜单”就不能选择“蓝色菜单”,等等。 记不清楚的朋友可以回头复习一下,此处不再赘述。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网