我在程序里面需要用到ctrl+G来激活一个操作,谢谢。

解决方案 »

  1.   

    我的程序是在程序的执行过成中需要用ctrl+G来激活另一个程序,请问如何用程序来实现这个操作?
      

  2.   

    选择“工具”==“菜单编辑器”==添加主菜单"mnuaaa"==添加从菜单"mnubbb"==在从菜单mnubbb中选择"快捷键"==ctrl+G完成
    代码段
    Private Sub mnubbb_Click()
    MsgBox "ctrl+G"    '提示ctrl+G
    End Sub
      

  3.   

    ' 按 Ctrl + G 启动记事本Option ExplicitPrivate Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
        If Shift = vbCtrlMask And KeyCode = 71 Then
            Shell "notepad.exe", vbNormalFocus
        End If
    End SubPrivate Sub Form_Load()
        Me.KeyPreview = True
    End Sub
      

  4.   

    我的情况是这样子的:我写了一个通过串口实现超级终端连接通信交换机的程序,我在超级终端里面需要用ctrl+G来激活交换机的人机接口程序,出现交换机的命令提示符,请问如何来实现这个ctrl+G的操作,谢谢,
      

  5.   

    SendKeys "^G"
    这个代码应该添加在那??
      

  6.   

    Private Sub Form_KeyPress(KeyAscii As Integer)
        If KeyAscii = 7 Then
            '这里就是你放的代码
        End If
    End Sub
    但首先你必须把Form.keypreview=true这样就OK了。
    建议你去搜索问题答案
      

  7.   

    我就是想把ctri+G这个组合键送给串口,如何来实现
      

  8.   

    注册系统热键
    模块:
    Option Explicit
       
        Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
        Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
        Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
        Declare Function RegisterHotKey Lib "user32" (ByVal hwnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
        Declare Function UnregisterHotKey Lib "user32" (ByVal hwnd As Long, ByVal id As Long) As Long
       
        Public Const WM_HOTKEY = &H312
        Public Const MOD_ALT = &H1
        Public Const MOD_CONTROL = &H2
        Public Const MOD_SHIFT = &H4
        Public Const GWL_WNDPROC = (-4)
        Public Const ShowHotKey = &H44EE
        Public preWinProc As Long
        Public Modifiers As Long, uVirtKey As Long
       
        Private Type taLong
         ll As Long
        End Type
        Private Type t2Int
         lWord As Integer
         hword As Integer
        End Type
        Public Function wndproc(ByVal hwnd As Long, ByVal Msg As Long, _
        ByVal wParam As Long, ByVal lParam As Long) As Long
         If Msg = WM_HOTKEY Then
            If wParam = ShowHotKey Then
               Dim lp As taLong, i2 As t2Int
               lp.ll = lParam
               LSet i2 = lp
               If (i2.lWord = Modifiers) And i2.hword = uVirtKey Then
                'Debug.Print "HotKey Shift亅Alt亅G Pressed "
                '你的操作,这里是显示窗体
                Form1.Show
               End If
            End If
         End If
         wndproc = CallWindowProc(preWinProc, hwnd, Msg, wParam, lParam)
         End Function窗体Option Explicit
        Sub Form_Load()
         Dim ret As Long     preWinProc = GetWindowLong(Me.hwnd, GWL_WNDPROC)     ret = SetWindowLong(Me.hwnd, GWL_WNDPROC, AddressOf wndproc)
           
         Modifiers = MOD_ALT + MOD_SHIFT + MOD_CONTROL
         
         uVirtKey = vbKeyG
              ret = RegisterHotKey(Me.hwnd, ShowHotKey, Modifiers, uVirtKey)
         
         Me.Hide
         End Sub
       
         Private Sub Form_Unload(Cancel As Integer)
         Dim ret As Long
         ret = SetWindowLong(Me.hwnd, GWL_WNDPROC, preWinProc)
         Call UnregisterHotKey(Me.hwnd, ShowHotKey)
         End Sub