⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmmain.frm

📁 让别的应用程序在自己的Form中运行
💻 FRM
字号:
VERSION 5.00
Begin VB.MDIForm frmMain 
   BackColor       =   &H8000000C&
   Caption         =   "Run Other Application in My Form Demo"
   ClientHeight    =   3195
   ClientLeft      =   165
   ClientTop       =   735
   ClientWidth     =   4680
   LinkTopic       =   "MDIForm1"
   StartUpPosition =   3  '窗口缺省
   WindowState     =   2  'Maximized
   Begin VB.Menu mnuOpen 
      Caption         =   "打开程序(&O)"
      Begin VB.Menu mnuNotepad 
         Caption         =   "记事本(&N)"
         Begin VB.Menu mnuOpenNotepad 
            Caption         =   "打开(&O)..."
         End
         Begin VB.Menu mnuResNotepad 
            Caption         =   "释放(&R)..."
            Enabled         =   0   'False
         End
      End
      Begin VB.Menu mnuCalc 
         Caption         =   "计算器(&C)"
         Begin VB.Menu mnuOpenCalc 
            Caption         =   "打开(&O)..."
         End
         Begin VB.Menu mnuResCalc 
            Caption         =   "释放(&R)..."
            Enabled         =   0   'False
         End
      End
      Begin VB.Menu mnuCard 
         Caption         =   "纸牌(&S)"
         Begin VB.Menu mnuOpenCard 
            Caption         =   "打开(&O)..."
         End
         Begin VB.Menu mnuResCard 
            Caption         =   "释放(&R)..."
            Enabled         =   0   'False
         End
      End
      Begin VB.Menu mnuSep1 
         Caption         =   "-"
      End
      Begin VB.Menu mnuClose 
         Caption         =   "退出(&Q)"
         Shortcut        =   ^Q
      End
   End
End
Attribute VB_Name = "frmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Notepad_OldParent&
Private Calc_OldParent&
Private Card_OldParent&

Private Notepad_Hwnd&
Private Calc_Hwnd&
Private Card_Hwnd&


Private Sub mnuOpenCalc_Click()
    Dim pid As Long
    Dim buf As String
    Dim buf_len As Long
    Dim styles As Long

    pid = Shell("calc.exe", vbNormalFocus)
    If pid = 0 Then
        MsgBox "Error starting program"
        Exit Sub
    End If

    Calc_Hwnd& = InstanceToWnd(pid)

    Calc_OldParent& = SetParent(Calc_Hwnd&, Me.hwnd)

    mnuOpenCalc.Enabled = False
    mnuResCalc.Enabled = True
End Sub

Private Sub mnuOpenNotepad_Click()
    Dim pid As Long
    Dim buf As String
    Dim buf_len As Long
    Dim styles As Long

    pid = Shell("notepad.exe", vbNormalFocus)
    If pid = 0 Then
        MsgBox "Error starting program"
        Exit Sub
    End If

    Notepad_Hwnd& = InstanceToWnd(pid)

    Notepad_OldParent& = SetParent(Notepad_Hwnd&, Me.hwnd)

    mnuOpenNotepad.Enabled = False
    mnuResNotepad.Enabled = True
End Sub

Private Sub mnuOpenCard_Click()
    Dim pid As Long
    Dim buf As String
    Dim buf_len As Long
    Dim styles As Long

    pid = Shell("sol.exe", vbNormalFocus)
    If pid = 0 Then
        MsgBox "Error starting program"
        Exit Sub
    End If

    Card_Hwnd& = InstanceToWnd(pid)

    Card_OldParent& = SetParent(Card_Hwnd&, Me.hwnd)

    mnuOpenCard.Enabled = False
    mnuResCard.Enabled = True
End Sub

Private Sub mnuResCalc_Click()
    SetParent Calc_Hwnd&, Calc_OldParent&

    mnuOpenCalc.Enabled = True
    mnuResCalc.Enabled = False
End Sub

Private Sub mnuResNotepad_Click()
    SetParent Notepad_Hwnd&, Notepad_OldParent&

    mnuOpenNotepad.Enabled = True
    mnuResNotepad.Enabled = False
End Sub

Private Sub mnuResCard_Click()
    SetParent Card_Hwnd&, Card_OldParent&

    mnuOpenCard.Enabled = True
    mnuResCard.Enabled = False
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -