VB中出现以下错误怎么解决?我是初学者啊. 发现二义性的名称:command1_click

PrivateSubCommand1_Click()Dimnum1,num2AsSingle'num1,num2分别代表输入的第一个数和第二个数Dimstrnum1,st... Private Sub Command1_Click()
Dim num1, num2 As Single 'num1,num2分别代表输入的第一个数和第二个数
Dim strnum1, strnum2 As String 'strnum1,strnum2分别代表输入的第一个数和第二个数的字符串形式
Dim firstnum As Boolean '判断输入是否是数字开头
End Sub
Private Sub Form_Load()
num1 = 0
num2 = 0 '令num1和num2为0
strnum1 = ""
strnum2 = "" '令strnum1和strnum2为空字符串
firstnum = True '确定为数字开头
End Sub

Private Sub Command1_Click(index As Integer)

Select Case index '用index作为判断分支的条件
Case 0 To 9 '如果index是0到9
If firstnum Then '输入为第一个数字的话
strnum1 = Str(index) '实型转字符型
firstnum = False '初赋值标志为假
Else '输入不是第一个数字的话
strnum1 = strnum1 + Str(index) '将输入的字符添加到原有字符串上
End If '结束if块
Label1.Caption = strnum1 '显示 '将字符串结果显示到标签上《还有其他语句,等待插入》
End Select

End Sub
展开
 我来答
网海1书生
科技发烧友

2011-10-12 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26231

向TA提问 私信TA
展开全部
程序中出现了两个 Private Sub Command1_Click
也就是说出现了两个同名称的子过程,这是不允许的,当点击按钮后,你让VB究竟执行哪个子过程啊?就好比有人说“我爸是李刚”后,两个人同时站起来说“我就是李刚”,这让VB情何以堪啊,呵呵。
另外,你这个Command1究竟是单个按钮,还是控件数组啊?看糊涂了
还有
Dim num1, num2 As Single
这样的变量定义方法也是错误的,要改为
Dim num1 As Single, num2 As Single
Dim strnum1 As String, strnum2 As String

下面是完整的修改结果:

Dim num1 As Single, num2 As Single '此三行定义全局变量
Dim strnum1 As String, strnum2 As String
Dim firstnum As Boolean

Private Sub Form_Load()
num1 = 0
num2 = 0 '令num1和num2为0
strnum1 = ""
strnum2 = "" '令strnum1和strnum2为空字符串
firstnum = True '确定为数字开头
End Sub

Private Sub Command1_Click(index As Integer)

Select Case index '用index作为判断分支的条件
Case 0 To 9 '如果index是0到9
If firstnum Then '输入为第一个数字的话
strnum1 = Str(index) '实型转字符型
firstnum = False '初赋值标志为假
Else '输入不是第一个数字的话
strnum1 = strnum1 + Str(index) '将输入的字符添加到原有字符串上
End If '结束if块
Label1.Caption = strnum1 '显示 '将字符串结果显示到标签上《还有其他语句,等待插入》
End Select

End Sub
匿名用户
2011-10-12
展开全部
你的问题有两个
1、
Command1_Click()和Command1_Click(index As Integer)是同一个事件,VB是事件型,要放弃过去代码驱动的思维。你可以将这两部分代码合并,并且辅以条件或选择性分支语句。
2、你在前五行的代码中犯了一个错误
Private Sub Command1_Click()
Dim num1, num2 As Single 'num1,num2分别代表输入的第一个数和第二个数
Dim strnum1, strnum2 As String 'strnum1,strnum2分别代表输入的第一个数和第二个数的字符串形式
Dim firstnum As Boolean '判断输入是否是数字开头
End Sub
你在这个事件中只是仅仅声明了几个变量,没有其他任何语句,他们在本段“End Sub”语句执行后就全部消亡了,因此没有意义。我猜测你的本意是申明一些局部变量,因此这里你只要将第一行“Private Sub Command1_Click()”和第五行“End Sub”删除就OK了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式