画图求教:有Picture1,Picture2,Picture3,在3各图片框上分别设有一个弹出菜单,弹出菜单的命定都执行DrawKline Picture3, ls, Day我想分别点击Picture1,Picture2,Picture3里的弹出菜单时,DrawKline Picture3, hqs.start, EveryScreenDay里的Picture3就分别为Picture1,Picture2,Picture3求教高手该如何完成,谢谢!!!画图函数:
DrawKline Picture3, ls, Day
Private Sub DrawKline(picBroad As PictureBox, CurJL As Long, TS As Long)  
End Sub

解决方案 »

  1.   

    用CallByName函数或者me.control属性
      

  2.   

    设一个全局变量,弹出菜单之前先改变这个变量的值,标记是由哪个图片框弹出的。
    然后就可以根据变量值执行下列语句里的一条:
    DrawKline Picture1, ls, Day
    DrawKline Picture2, ls, Day 
    DrawKline Picture3, ls, Day 
      

  3.   

    谢谢!!!dlyme 和chenjl1031 ,谢谢!!!
    TO dlyme:
    谢谢你的提醒,我会了
    TO chenjl1031:
    能请教你,该如何用CallByName函数吗,谢谢!!!
      

  4.   

    Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button <> vbRightButton Then
        Exit Sub
        End If
        If popSubMenu.UBound > 0 Then
        PopupMenu popMenu1 '调用菜单
        End If
    End Sub
    Private Sub Picture2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button <> vbRightButton Then
        Exit Sub
        End If
        If popSubMenu.UBound > 0 Then
        PopupMenu popMenu1 '调用菜单
        End If
    End Sub
    Private Sub Picture3_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button <> vbRightButton Then
        Exit Sub
        End If
        If popSubMenu.UBound > 0 Then
        PopupMenu popMenu1 '调用菜单
        End If
    End Sub
    Private Sub popSubmenu_Click(Index As Integer)
      If Index >= mFirstValidPos And Index <= mLastValidPos Then
       DrawKline   Picture3,   ls,   Day '分别点击Picture1,Picture2,Picture3里的弹出菜单时Picture3分别为Picture1,Picture2,Picture3 
      End If
    End Sub
      

  5.   

    CallByName 函数用法  http://1230.com.ru/vb/?typeid=10&libid=53