Qt 子視窗 隱藏標題欄的圖示,隱藏在工作列上的圖示

上位机發表於2024-07-16

Qt子視窗使用Qt::Dialog樣式時,隱藏視窗標題欄圖示方法:

this->setWindowIcon(QIcon());

Qt子視窗,隱藏在工作列上的圖示:

最簡單的方法是設定Qt::Tool樣式:

this->setWindowFlags(Qt::Tool);

但是在使用msvc2017的Qt庫時,關閉按鈕樣式不正常。而minGW庫是正常的。

所以在window下,可以採用Windows API隱藏工作列圖示:

    //消除工作列顯示
    LONG style = ::GetWindowLong((HWND)this->winId(), GWL_EXSTYLE); //獲得窗體擴充套件風格
    style &= ~WS_EX_APPWINDOW; //取消WS_EX_APPWINDOW
    ::SetWindowLong((HWND)this->winId(), GWL_EXSTYLE, style); //設定窗體擴充套件風格

相關文章