簡體   English   中英

有沒有辦法保證Internet Explorer始終是最頂層的窗口?

[英]Is there a way to guarantee that internet explorer will alway be the topmost window?

我正試圖強迫一個Internet Explorer窗口成為TOPMOST。 Internet Explorer窗口頂部不應顯示其他窗口。 我必須使用Internet Explorer。 我也在Windows 7中運行它。顯然這有所不同,但我發現的所有信息都相當含糊,基本上是由人們喊“為什么這不容易!”。 這是我的代碼:

HWND ieWin = FindWindow(TEXT("IEFrame"), 0);
SetFocus(ieWin);
SetWindowPos(ieWin, HWND_TOPMOST, 0, 0, 100, 100, SWP_SHOWWINDOW );
UpdateWindow(GetParent(ieWin));

這是在一個循環中運行,所以我可以強制窗口持續進行這些設置,但它沒有幫助。 有時上面的代碼有效,有時卻沒有。

經過多次討論,我確實結束了使用循環強制窗口保持在頂部。 如果將來其他人真的需要這樣做,他們確實需要確保他們遵循以下步驟。

1)確保他們可以完全控制用戶可以打開的窗口。 在我的情況下,用戶只能打開我的程序和Internet Explorer。

2)第一次將IE窗口設置為show時將其設置為前景。

3)循環將窗口設置為TOP_MOST時,不要將焦點設置為IE窗口。

4)確保你有SWP_SHOWWINDOW,SWP_NOSIZE和SWP_NOMOVE。 否則該循環將在每次迭代時改變窗口的大小和位置。

如果你可以盡可能地避免它,那就不要這樣做了:P

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM