vladimir horowitz:请教VB问题

来源:百度文库 编辑:高考问答 时间:2024/04/28 15:31:01
我主程序里需要重复写下面的四行代码
CmdNext.Enabled = False
CmdLast.Enabled = False
CmdPrivious.Enabled = False
CmdFirst.Enabled = False
我想调用个模块,请问模块里应该怎么写呢?
我在模块里是这么写的:
Public Sub Control(a As Boolean, b As Boolean, c As Boolean, d As Boolean)
CmdFirst.Enabled = a
CmdPrivious.Enabled = b
CmdNext.Enabled = c
CmdNext.Enabled = d
End Sub
再在主程序中Module1.Control False, False, False, False
请问怎么不对呢?

错误在模块程序里
CmdFirst等4个控件没有标明他们所在的窗体
虽然可能只有一个“Form1”窗体,但是窗体名称还是需要的

所以应该写Form1.CmdFirst.Enabled=a ....

试试吧,应该就是这样

首先在窗体1中添加四个命令按钮,名称分别为CmdFirst,CmdPrivious,CmdNext,CmdLast
在模块中定义:你写了两行cmdnext重复了
Public Sub Control(a As Boolean, b As Boolean, c As Boolean, d As Boolean)
Form1.CmdFirst.Enabled = a
Form1.CmdPrivious.Enabled = b
Form1.CmdNext.Enabled = c
Form1.CmdLast.Enabled = d
End Sub
调用是对的

Public Sub Control(a As Boolean, b As Boolean, c As Boolean, d As Boolean)
with 你的主窗体名
.CmdFirst.Enabled = a
.CmdPrivious.Enabled = b
.CmdNext.Enabled = c
.CmdLast.Enabled = d
end with
End Sub

楼主调用的时候为什么用Module1啊 ?