怎樣讓視窗不顯示在工作列和ALT TAB中

2021-06-17 22:45:41 字數 622 閱讀 2353

之前想弄個像qq旋風那樣的懸浮視窗,就研究了下怎麼讓視窗不顯示在工作列中,方法其實很簡單就是將視窗的擴張屬性設定成ws_ex_toolwindow,msdn中對該屬性有詳細介紹,**如下:

::setwindowlong(m_hwnd, gwl_exstyle, ws_ex_toolwindow );

但是這樣一來視窗的其他的擴充套件屬性不管有沒有,肯定是全沒有,因此可以用下面的方法保留視窗的其他擴充套件屬性:

dword dwexstyle = ::getwindowlong(m_hwnd, gwl_exstyle);  

dwexstyle |= ws_ex_toolwindow;  

::setwindowlong(m_hwnd, gwl_exstyle, dwexstyle);

我在網上看過一種方法是先建立一種隱藏視窗,然後以這個隱藏視窗為父視窗再建立乙個子視窗,是的,工作列是沒有顯示了,但是你用alt+tab還是看得到,要徹底隱藏,這個時候只需再給這個子視窗設定乙個ws_ex_toolwindow屬性就可以了。

另外還有乙個ws_ex_layered  的使用,當你需要修改視窗的透明度時必須給視窗加上該屬性。

注:上面的**可以加在oninitdialog()裡面測試。

【end】

MFC 讓對話方塊不顯示在工作列和桌面

工作列隱藏 或者 windowplacement wp wp.length sizeof windowplacement wp.flags wpf restoretomaximized wp.showcmd sw hide setwindowplacement wp 在ie版本為4.0以上的系統中有...

C Winform不顯示在工作列及托盤事件

1.新增notifyicon contextmenustrip控制項到表單,設定notifyicon屬性 contextmenustrip屬性 編寫事件 this.showintaskbar false 使窗體不顯示在工作列private void toolstripmenuitem click o...

wxPython實現視窗在工作列中閃爍

為提醒使用者注意,通常採用視窗閃爍的效果來達到這一目的,就像即時聊天工具qq,jabber等,當收到好友發來的訊息時通常會閃爍托盤中的圖示,如果聊天視窗是開啟的,那麼就會閃爍開啟的聊天視窗在工作列中的按鈕,甚至有時連視窗的標題欄都會閃爍。其實實現這樣的閃爍功能是很簡單的,如果對windows api...