純粹透明背景的QGraphicsView

2021-06-20 12:45:53 字數 782 閱讀 8987

使用qt的qgraphicsview進行動態介面的繪製,通明效果,總是遲早會遇到的,使用setwindowopacity麼?那樣只能讓你的qgraphicsview機器子視窗全部變成通明的,這不是我們說的主題。正常的qwidget,只要設定好父視窗,屬性設定為framelesswindowhint,不重新整理背景,基本沒有問題了。但是在qgraphicsview上這種方式,竟然是不成功的,百思不得其解。我使用以下方式完成這種效果:

setstylesheet("background: transparent;border:0px");

setwindowflags(qt::framelesswindowhint);  

sethorizontalscrollbarpo

licy(qt::scrollbaralwaysoff);

setverticalscrollbarpoli

cy(qt::scrollbaralwaysoff);  

如果你的qgraphicsview佔滿了整個螢幕,那麼不需要設定border:0px,這完全沒有意義;如果qgraphicsview只是占有螢幕的一部分,那麼就必須設定了,看看兩種方式的效果:

1.setstylesheet("background: transparent;border:0px")

2.setstylesheet("background: transparent")

看到那個罪惡的邊框了吧。

從這個例子也能看出emascript的給力,指令碼比大型語言更有樂趣的就是簡潔,無需太多的描述,這可以作為另外乙個主題來討論了。

背景透明的ListBox(C WinForm)

不知道大家有沒有遇到過這種問題,c 中希望搞乙個背景透明的listbox,且文字居中,卻發現vs裡面自帶的listbox控制項不支援背景透明,怎麼辦?我們可以做乙個自定義控制項,過載裡面的onpaint函式,使listbox支援背景透明 實現背景透明的listbox,且文字居中 編寫人 塗劍凱 pu...

背景透明的ListBox(C WinForm)

不知道大家有沒有遇到過這種問題,c 中希望搞乙個背景透明的listbox,且文字居中,卻發現vs裡面自帶的listbox控制項不支援背景透明,怎麼辦?我們可以做乙個自定義控制項,過載裡面的onpaint函式,使listbox支援背景透明 實現背景透明的listbox,且文字居中 編寫人 塗劍凱 pu...

背景透明的ListBox(C WinForm)

不知道大家有沒有遇到過這種問題,c 中希望搞乙個背景透明的listbox,且文字居中,卻發現vs裡面自帶的listbox控制項不支援背景透明,怎麼辦?我們可以做乙個自定義控制項,過載裡面的onpaint函式,使listbox支援背景透明 實現背景透明的listbox,且文字居中 編寫人 塗劍凱 pu...