我主要是在Vb6中实现在一个窗体中能够判断另一个窗体的哪一个按扭被单击,关于这个问题在网上查了好长时间,有好多是在其他语言环境下实现的,在VB6中如何实现,说的很少,有说是可以用API实现,但没有给出代码,我还是不知道该怎么用,有哪位高手知道如何实现可否给出详细的实现代码啊?

解决方案 »

  1.   

    是自己的程序的窗体啊,就是同一个工程内不同的窗体之间,在一个窗体里如何知道单击了另一个窗体里哪一个按扭?就是先出现的第一个窗体,并且执行了第一个窗体的一个单击事件里的部分代码后弹出第二个窗体,然后通过判断是否单击了弹出的第二个窗体里的一个按扭来决定是否接着执行第一个窗体里刚才还未执行的其它部分代码,通过在网上搜觉得api应该能实现,可是不知道具体该怎么实现?还望高手多多指教啊?
      

  2.   

     Dim frmEx As New Form2
       frmEx.Show 1
       '其它代码
            if frmEx.ID=1 then'ID是Form2的public变量
                '操作1
           else
                '操作2
           end if
       Set frmEx = Nothing
       
    end sub
      

  3.   

    建立一个窗口Form1
    在Form1中增加一个Command1的按扭
    在代码窗口中输入代码:
    Private Sub Command1_Click()
      Select Case sMsgbox("vfdsda", Me)
         Case 0
              MsgBox "你单击的是""是""按扭"
         Case 1
              MsgBox "你单击的是""否""按扭"
         Case 2
              MsgBox "你单击的是""取消""按扭"
         Case Else
              MsgBox "您没有单击按扭退出窗口"
      End Select
    End Sub
    '*************************************
    建立一个窗口Form2
    在Form1中增加三个按扭
    第一个按扭
    Name=Command1
    Caption=是
    Index=0
    第二个按扭
    Name=Command1
    Caption=否
    Index=1
    第三个按扭
    Name=Command1
    Caption=取消
    Index=2代码窗口中输入以下代码:
    Public cmdIndex As LongPrivate Sub Command1_Click(Index As Integer)
      cmdIndex = Index
      Me.Hide
    End Sub
    '***************************************
    再建立一个Module1
    在代码窗口中输入以下代码:Function sMsgbox(ByVal Prompt As String, ByVal frm As Form) As Long
       Form2.cmdIndex = -1
       Form2.Show vbModal, frm
       Form2.Label1.Caption = Prompt
       Form2.Label1.AutoSize = True
       sMsgbox = Form2.cmdIndex
    End Function'**************************
    按F5键运行,看是否是要这种效果?
      

  4.   

    对了,还有,在第二个窗口中增加一个Lable1的标鉴控件.