程序第2次打开时,怎么把第1次打开的激活,如同金山词霸一样

解决方案 »

  1.   

    上次关闭时,记录当前打开的状态。比如记录在ini文件中。
      

  2.   

    第二次打开时,读取该ini文件的设置,并在程序中恢复
      

  3.   

    我不明白啊到底怎么弄。程序只能启动一次,点击EXE文件时,把正在运行中的程序变成当前活动页面
      

  4.   

    参考:http://www.m5home.com/blog2/blogview.asp?logID=466&cateID=2
      

  5.   

    用app.previnstance判断程序是否已经启动.
    如果启动,用findwindow查找获取hwnd,再用setforegroundwindow显示
      

  6.   


     不使用API也可以实现在Win应用程序中还有一个叫作DDE的应用程序通信
    也可以实现
    不过在VB下实现 好像很有问题!
    我当时是准备用DDE
    在网上找到了实例
    测试了可行
    我自己按照那种方式写不行
    我把代码照搬到我的程序来都不行
    代码属性设置绝对没问题!最后还是用的8楼的方法,用FindWindow
    我那时候好像还要传递参数
    再查找子窗口文本框
    设置其值
    在文本框的Change方法中获取参数
      

  7.   

    Module1Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function ShowWindowAsync Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
    Private Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As Long) As LongPrivate Sub Main()
    If App.PrevInstance Then
        Dim hwnd As Long, t As Long
        hwnd = FindWindow(vbNullString, "Form1")
        If hwnd > 0 Then
            Dim pid As Long, t1 As Long
            t = ShowWindowAsync(hwnd, 1)
            SetForegroundWindow (hwnd)
        End If
        End
    End If
    Form1.Show
    End Sub