看起來最頂層的屬性有時會將我的應用程序放在所有其他應用程序之上,但是在我的測試中,它有點奇怪,有時候它有效並且窗口仍然高於所有其他(外部應用程序)窗口,但有時它什麼都不做。我甚至嘗試使用WS_EX_TOPMOST標誌,並將其設置爲使用setWindowLong()的Win32 API調用。他們都沒有把窗戶放在最前面。除了使用最頂層的窗口之外,是否還有另一種方法可以在每個打開的窗口之上保留窗口?還是有什麼我應該知道的最頂層?Form.TopMost有時候工作
2
A
回答
1
除了Form.TopMost
你可以試試Win32 API SetForegroundWindow。
[return: MarshalAs(UnmanagedType.Bool)]
[DllImport("user32", CharSet=CharSet.Ansi, SetLastError=true, ExactSpelling=true)]
public static extern bool SetForegroundWindow(IntPtr hwnd);
然後致電SetForegroundWindow(this.Handle)
。
2
我有運氣以下Win32 API調用:
const int SW_SHOW = 5;
BringWindowToTop(form.Handle);
ShowWindow(form.Handle, SW_SHOW);
5
我只是用這個:
form.TopLevel = true;
form.TopMost = true;
這使得窗口頂層(即它沒有父和行爲作爲應用程序的主要形式),然後確保它是最頂層的(即,顯示在所有其他非最頂層窗口之上)。它一直像魅力一樣工作。
請注意,在顯示窗口之前,我會這樣做。
0
工程100%!
User32.AllowSetForegroundWindow((uint)Process.GetCurrentProcess().Id);
User32.SetForegroundWindow(Handle);
User32.ShowWindow(Handle, User32.SW_SHOWNORMAL);
相關問題
- 1. UIView autoResizing有時候工作
- 2. Android findViewById有時候工作
- 3. WPF圖像源綁定有時候有時候不會工作
- 4. canvas.drawCircle有時候工作,有時候不是
- 5. admin ajax - 有時候工作,有時不工作
- 6. del in cassandra cli有時候不工作
- 7. KeyboardInterrupt異常有時候工作?
- 8. php is_dir有時候不會工作
- 9. 開始活動時,GCM有時會工作,有時候不工作。
- 10. CSS過濾器 - 有時會工作,有時候不會?
- 11. 爲什麼UISearchDisplayController有時會工作,有時候不行?
- 12. Nsight 2.2有時候工作有時不會
- 13. Web服務有時可以正常工作,有時候不是。
- 14. AsyncTask有時會工作,有時候不會
- 15. 腳本有時會工作,有時候不行?
- 16. Ajax表單有時候工作,有時會工作和刷新,有時會刷新並失敗... Bwah?
- 17. javascript有時候CET有時候CEST
- 18. 焦點的時候不工作在Firefox
- 19. mod_rewrite的不工作的時候我加
- 20. NSURL不工作任何時候
- 21. Android:TextView.setLayoutParams有時工作,有時不工作
- 22. Javascript:數組在有點長的時候不工作
- 23. Java Swing爲什麼有時候只對齊工作?
- 24. Sun Java jstat無法正常工作..有時候!
- 25. 流星收集find()/ fetch()有時候工作
- 26. Jquery:加載DOM後的圖像淡入。有時候工作..?
- 27. jQuery在localhost中工作,但沒有活的時候?
- 28. 圓角不工作的時候按鈕有背景圖像
- 29. 的jQuery的CSS過渡,有的時候它不工作
- 30. 我錯過了什麼時候開始所有的工作?