防止通知表單中的焦點被盜
螢幕底部通知表單通常會導致焦點問題,中斷使用者工作流程。 以下是如何防止這種破壞性行為。
方法一:使用ShowWithoutActivation
最簡單的解決方案是覆蓋 Form.ShowWithoutActivation
屬性。將其設為 true
顯示表單而不啟動它。
<code class="language-csharp">protected override bool ShowWithoutActivation { get { return true; } }</code>
方法二:自訂CreateParams
要獲得更多控制,請重寫 CreateParams
方法。 使用 WS_EX_NOACTIVATE
和 WS_EX_TOOLWINDOW
標誌可防止啟動和標準視窗行為。
<code class="language-csharp">protected override CreateParams CreateParams { get { CreateParams baseParams = base.CreateParams; const int WS_EX_NOACTIVATE = 0x08000000; const int WS_EX_TOOLWINDOW = 0x00000080; baseParams.ExStyle |= (int)(WS_EX_NOACTIVATE | WS_EX_TOOLWINDOW); return baseParams; } }</code>
兩種方法都可以確保您的通知表單出現,而不會奪走主應用程式的焦點,從而保持流暢的使用者體驗。
以上是如何在不竊取焦點的情況下顯示通知表單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!