我在做VB题目的时候遇到了几题有点疑问的,烦请各位帮助。。。(下列各题均在VB中成立)

来源:百度知道 编辑:UC知道 时间:2024/05/22 05:51:31
1、一下叙述错误的是____.
A.一个工程中可以包含多个窗体文件
B在一个窗体文件中用private定义的通用过程能被其他窗体调用
C在设计VB程序是,窗体、标准模块、类模块等需要分别保存为不同类型的磁盘文件
D全局变量必须在标准模块中定义
【这题的答案是选B,但我觉得D也是错误的,它说的有点绝对,书上是说全局变量必须在窗体模块或标准模块的通用声明中用Public关键字声明,这到底是怎么回事?】

2、“在同一窗体的菜单项中,不允许出现标题相同的菜单项”这句话对吗?(answer:错)为什么呢,请说明理由。

3、在菜单编辑器中定义了一个名为memu1的子菜单项,为了在程序运行时,能控制在该子菜单项前打钩记号的出现与消失,应使用语句_____
A menu1.checked=true
B menu1.checked=not menu1.checked
【answer:B,为什么呢?请说明理由】

考试就是这样,尽搞一些文字游戏。第一题如果是单选,那肯定选B。
D的答案嘛,说正确,是因为在窗体模块的通用声明中用Public关键字声明的变量,其作用域虽然是全局的,但要说“全局变量”还是有点不顺耳。比如说,我家的东西可以借给大家用,但要说这东西是公物那就错了,虽然它和公物一样。
只是,如果再深一层,还有一种更加全局的变量,是在类模块中定义的,所以这句话深入来说还是错的,不过一般的VB教程不会牵涉这个内容。

“不允许出现标题相同的菜单项”当然是错的,是“名称”不能相同,英文名就是“name”属性不能相同,但“caption”属性可以相同。

not menu1.checked 是一个“反运算”,如果当前的checked是“真”,那not运算后就变“假”,反之则反之。这个好像以前的VB教程是有讲的。

1.B。 至于D,假设在form1模块中设置public aaa as integer. 在form2调用时,只能通过form1.aaa来调用。这个变量是form1的,不是全局的。
2.menu里面来区分条目的是名称。而不是标题。想一想你可以无限制的使用-来做分隔符。而名称不能相同。
3.B语句使checked的true,false切换。每执行一次切换一次。A不能。