直接這麼寫有坑
mask_img = qimage(mask_filename)
self.setmask(qbitmap(mask_img)
)
核心在於self.setmask(self.pix.mask())
打個廣告:程式設計代做,有需要的可以聯絡,qq1692303843
全部**如下
import sys
from pyqt5 import qtcore
from pyqt5.qtcore import qt
from pyqt5.qtgui import qpixmap, qpainter
class
launchpage
(qwidget)
:"""不規則窗體類"""
def__init__
(self)
:super
(launchpage, self)
.__init__()
self.pix = qpixmap(
'./images/***.png'
)# 蒙版+
self.resize(self.pix.size())
self.setmask(self.pix.mask())
# 設定無邊框和置頂視窗樣式
self.setwindowflags(qt.framelesswindowhint | qtcore.qt.windowstaysontophint)
self.center(
)def
paintevent
(self, event)
:"""繪製視窗"""
paint = qpainter(self)
paint.drawpixmap(0,
0, self.pix.width(
), self.pix.height(
), self.pix)
defcenter
(self)
:"""實現窗體在螢幕**"""
# qdesktopwidget為乙個類,呼叫screengeometry函式獲得螢幕的尺寸
screen = qdesktopwidget(
).screengeometry(
) size = self.geometry(
) x =
(screen.width(
)-size.width())
/2y =
(screen.height(
)-size.height())
/2self.move(
int(x)
,int
(y))
#呼叫move移動到指定位置
if __name__ ==
'__main__'
: win = launchpage(
) win.show())
)
PyQt 不規則窗體的實現之一
知識點 pyqt一般實現的窗體就是當前作業系統原生窗體的樣式,ubuntu下的窗體還不錯,window下的就難看了,雖然平時應用程式關心的往往是業務和功能,但是偶爾我們也需要製作一些個性的窗體樣式,如qq 360 千千靜聽等,這種漂亮個性的窗體,很能吸引大眾的眼球。實現不規則窗體,我採用繼承qwid...
Pyqt5保持窗體在前台
關鍵 import pyqt5.qtcore mywin.setwindowflags pyqt5.qtcore.qt.windowminimizebuttonhint 使能最小化按鈕 pyqt5.qtcore.qt.windowclosebuttonhint 使能關閉按鈕 pyqt5.qtcore...
pyqt5切換python版本 pyqt5介面切換
主要的思路就是建立兩個frame 如果有兩個以上同理 使用setvisible 函式顯示或者隱藏frame 引數是bool值 import sys from pyqt5.qtwidgets import from pyqt5.qtcore import from pyqt5.qtgui import...