1

IE ウィンドウは複数のタブを持つことができます。P/Invoke を使用して、タイトルが一致するタブを選択したいと考えています。すべてのタブをトラバースし、そのようなタブが存在するかどうかを確認するコードが既にあります。

参照 P/Inoke:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms633548%28v=vs.85%29.aspx

 while ((tabNum++ <= 15) &&
               (curChild = FindWindowEx(parentHwnd, curChild, "TabWindowClass", IntPtr.Zero)) != IntPtr.Zero)
        {
            String sb = GetWindowTitle(curChild);

            if (sb.Contains(expectedTitleString))
            {
                //TODO : I want to select this tab here.
                foundTab = true;
                break;
            }
            if (is_ie8)
            {
                parentHwnd = FindWindowEx(hWnd, parentHwnd, "Frame Tab", IntPtr.Zero);
                curChild = IntPtr.Zero;
            }
        }
4

1 に答える 1

0

タブをフォーカスされたウィンドウとして設定するとうまくいくでしょうか?

[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool SetForegroundWindow(IntPtr hWnd);
于 2012-05-10T20:18:36.823 に答える