QT渲染視窗新增遮罩

2021-10-07 19:42:07 字數 852 閱讀 5200

// 建立遮罩

m_cellmasks[0] = new qwidget;

m_cellmasks[0]->setwindowflags(qt::framelesswindowhint | windowflags()); // 隱藏標題

m_cellmasks[0]->setwindowopacity(0.4); //關鍵-設定視窗透明度 1不透明 0透明

m_cellmasks[0]->setvisible(false); // 預設隱藏

m_cellmasks[0]->setstylesheet("background-color: #1f1f1f"); // 遮罩背景顏色

m_cellmasks[0]->installeventfilter(this); // 註冊過濾器

// 顯示遮罩--這裡需要注意,我們的遮罩不能直接使用介面的rect,需要計算出實際的位置

qrect rect = qrect(this->normalgeometry().x(), this->normalgeometry().y(), this->normalgeometry()->width(), this->normalgeometry()->height());

m_cellmasks[0]->setparent(this, qt::framelesswindowhint | qt::window);

m_cellmasks[0]->setgeometry(rect);

m_cellmasks[0]->show();

// 注意,現在的遮罩是單獨彈出視窗的rect,若實際的遮罩是視窗部件,

// 則需要計算出,視窗部件在螢幕中的實際的位置

logo qt新增 Qt官方示例 視窗標誌

視窗標誌示例展示了如何使用qt中可用的視窗標誌型別來指定視窗系統屬性。只能設定乙個的視窗標誌對照表 視窗標誌 描述qt qwidget 視窗的預設屬性 qt window 帶有視窗系統框架和標題欄 qt dialog 對話方塊 通常標題欄中沒有最大化或最小化按鈕 qt sheet macos表單式視...

給QT不規則視窗新增陰影

在家休息,試著用qt去模仿各類管家軟體的介面,做到自繪陰影的時候,蛋疼了。網上搜到的基本都是一篇文章轉來轉去,一開始也被思路限制了。嘗試過載paintevent,然後自己繪製矩形陰影,但是繪製的演算法始終覺得有問題,最後發現 qgraphicsdropshadoweffect 這個乙個好東西,雖說網...

Qt實現半透明遮罩效果

本文索引我們在顯示一些模態對話方塊的時候,往往需要將對話方塊的背景顏色調暗以達到突出當前對話方塊的效果,例如 對話方塊的父視窗除了標題欄以外的部分都變暗了,在父視窗的對比下對話方塊的顯示效果就得到了強調。這種設計多見於web頁面,當使用者點選諸如購買之類的按鈕後頁面會彈出乙個購物清單確認對話方塊,並...