天天看點

Qt之窗體透明簡述正常狀态全透明主窗體透明子窗體透明更多參考

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

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

主窗體透明(子窗體不透明)

子窗體透明(主窗體不透明)

<a href="#%e7%ae%80%e8%bf%b0">簡述</a>

<a href="#%e6%ad%a3%e5%b8%b8%e7%8a%b6%e6%80%81">正常狀态</a>

<a href="#%e5%85%a8%e9%80%8f%e6%98%8e">全透明</a>

<a href="#%e6%95%88%e6%9e%9c">效果</a>

<a href="#%e6%ba%90%e7%a0%81">源碼</a>

<a href="#%e4%b8%bb%e7%aa%97%e4%bd%93%e9%80%8f%e6%98%8e">主窗體透明</a>

<a href="#%e6%95%88%e6%9e%9c-1">效果</a>

<a href="#%e6%ba%90%e7%a0%81-1">源碼</a>

<a href="#%e5%ad%90%e7%aa%97%e4%bd%93%e9%80%8f%e6%98%8e">子窗體透明</a>

<a href="#%e6%9b%b4%e5%a4%9a%e5%8f%82%e8%80%83">更多參考</a>

正常狀态下,效果如下:

Qt之窗體透明簡述正常狀态全透明主窗體透明子窗體透明更多參考

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

Qt之窗體透明簡述正常狀态全透明主窗體透明子窗體透明更多參考

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

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

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

Qt之窗體透明簡述正常狀态全透明主窗體透明子窗體透明更多參考

使用paintevent進行背景繪制

主窗體采用背景色:

主窗體采用背景圖檔:

首先,設定背景透明:

然後,繪制窗體背景:

<a href="http://blog.csdn.net/liang19890820/article/details/50357715">qt之設定qwidget背景色</a>