vb.net更改Internet Explorer和Excel之间的活动窗口

时间:2014-01-09 17:50:13

标签: vb.net excel internet-explorer window foreground

我正在VB.NET中编写一个打开Excel和Internet Explorer的程序。 为了将密钥发送到这个程序,我需要将其中一个的窗口带到前台。而且与其他人一样多次。

我该如何继续这样做?

打开Excel的代码:

xlsApp = New Excel.Application
            xlsApp.Visible = True
            xlsWorkBooks = xlsApp.Workbooks
            xlsWB = xlsWorkBooks.Add() 'Open("T:\Dados_de_Aplicativos\Travel_Finder\texte.xlsx")
            xlsWS = xlsWB.Sheets(1)

打开IE的代码:

    Dim IE As SHDocVw.InternetExplorer
    IE = CreateObject("InternetExplorer.Application")

打开IE后,我可以将Excel放到前台:

xlsApp.WindowState = Excel.XlWindowState.xlMinimized
        If xlsApp.WindowState = Excel.XlWindowState.xlMinimized Then
            xlsApp.WindowState = Excel.XlWindowState.xlMaximized
        End If

但我没有找到与IE浏览器类似的方法。

如果有解决方案,能否举个例子?

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用应用程序名称或其PID来使用“AppActivate”。 类似于:AppActivate(“应用程序标题”)或AppActivate(PID),但如果窗口最小化,它将无法工作。

这篇文章How to restore a minimized window using AppActivate(ProcessID)可以为您提供帮助。

你也可以使用Pinvoke。