執行效果如下圖:
可以設計自己喜歡的風格,我這個只是簡單演示功能
關鍵**:
setwindowflags(qt::customizewindowhint|qt::framelesswindowhint); //將主窗體設定為這樣的樣式
utitlebar = new utitlebar(this);utitlebar->setautofillbackground(true); //
自動填充背景
qpalette palette;
palette.setcolor(qpalette::background, qcolor(
"#2162a9
"));
utitlebar->setpalette(palette);
utitlebar 是繼承為widget的乙個自定義類最後需要在 主窗體的resizeevent函式中新增下列**
void dialog::resizeevent(qresizeevent *)整個思路:1、實現自定義的標題欄 -- > 主窗體設定無標題樣式 -- > 將自定義的標題欄新增到主窗體上 -- > 在主窗體重繪函式中新增變化**;
使用自定義窗體
一 從頭定義新自定義窗體 1.新建乙個目錄,再新建乙個工程。2.定義這個自動建立好的窗體為自己需要的樣式。3.包存這個窗體和單元到希望的目錄,工程檔案就儲存在新建的目錄。4.將沒有用的工程聯通目錄一併刪除。二 在新工程中使用自定義窗體 1.新建乙個工程。2.移除自動建立的單元 自動建立的form也會...
自定義形狀窗體
在用vb程式設計中,有時,我們需要使用乙個跟不規則背景有相同形狀的不規則窗體,怎麼辦呢?首先,我們需要設定無邊框窗體,即 borderstyle 0 其次,把背景覆蓋不住的窗體背景設定成透明。這需要用到api函式,private declarefunction getwindowlong lib u...
C winform 窗體自定義
今天看了篇技術帖,原來是可以不通過工具欄的現有工具進行布局的。以前 當我要有2個窗體的時候,就會拖拽2個 然後進行編輯。現在才明白,只要寫成類也是可以使用的。開啟乙個窗體的檔案,發現當自動新建個窗體時,其實是系統幫忙做了很多的準備工作。例如designer.cs中就有 initializecompo...