Qt之窗體透明

2022-03-25 03:05:28 字數 511 閱讀 4494

關於窗體透明,經常遇到,下面我們針對常用的透明效果進行講解:

全透明(主窗體、子窗體均透明) 主窗體透明(子窗體不透明) 子窗體透明(主窗體不透明)

正常狀態下,效果如下:

這裡,我們可以透過整個窗體**到桌面的背景。

設定視窗的透明度,如下:

setwindowopacity(0.5);透明度取值範圍:0.0(全透明) - 1.0(不透明),預設值為1.0。

這裡,我們可以透過窗體的一部分**到桌面的背景。

使用paintevent進行背景繪製

主窗體採用背景色:

void mainwindow::paintevent(qpaintevent *event)

主窗體採用背景:

首先,設定背景透明:

setattribute(qt::wa_translucentbackground, true);然後,繪製窗體背景:

void qzxingwidget::paintevent(qpaintevent *event)

Qt 透明窗體實現

一.背景刷成黑色,前景色設為白色。方法一 paltette方式,經測試,該方法不會影響到其他控制項,推薦使用 qpalette bgpal palette bgpal.setcolor qpalette background,qcolor 0,0 0,255 bgpal.setcolor qpale...

QT 設定窗體透明

1.設定主窗體透明 設定窗體的透明的屬性為 setattribute qt wa translucentbackground,true 但 同時 需要設定 curflags qt framelesswindowhint 否則窗體會顯示為黑色 2.設定窗體透明度 this setwindowopaci...

QT透明窗體大雜燴

1.視窗整體透明,但是窗體上的控制項不透明。通過設定窗體的背景色來實現,將背景色設定為全透。qpalette pal palette pal.setcolor qpalette background,qcolor 0x00,0xff,0x00,0x00 setpalette pal 試驗效果 窗體標...