pyqt5 設定視窗背景

2021-10-24 04:45:36 字數 2942 閱讀 5500

通過qss可以設定視窗的背景色或背景。

import sys

from pyqt5.qtcore import

*from pyqt5.qtgui import

*from pyqt5.qtwidgets import

*class

mainwindow

(qwidget)

:def

__init__

(self, parent=

none):

super()

.__init__(parent)

self.setobjectname(

"mainwindow"

) qss =

"qwidget#mainwindow"

# qss = "qwidget#mainwindow"

self.setstylesheet(qss)

if __name__ ==

"__main__"

: window = mainwindow(

) window.show())

)

使用qpalette設定視窗背景顏色。

import sys

from pyqt5.qtcore import

*from pyqt5.qtgui import

*from pyqt5.qtwidgets import

*class

mainwindow

(qwidget)

:def

__init__

(self, parent=

none):

super()

.__init__(parent)

palette = qpalette(

) palette.setcolor(qpalette.background, qt.black)

self.setpalette(palette)

if __name__ ==

"__main__"

: window = mainwindow(

) window.show())

)

使用qpalette設定視窗背景時,需要考慮背景的尺寸,當背景的寬度和高度大於視窗的寬度和高度時,背景將會平鋪整個視窗;當背景的寬度和高度小於視窗的寬度和高度時,則載入多個背景。

import sys

from pyqt5.qtcore import *

from pyqt5.qtgui import *

from pyqt5.qtwidgets import *

class mainwindow(qwidget):

def __init__(self, parent=none):

super().__init__(parent)

palette = qpalette()

palette.setbrush(qpalette.background, qbrush(qpixmap("background.png")))

self.setpalette(palette)

在paintevent函式內部繪製背景色:

import sys

from pyqt5.qtcore import

*from pyqt5.qtgui import

*from pyqt5.qtwidgets import

*class

mainwindow

(qwidget)

:def

__init__

(self, parent=

none):

super()

.__init__(parent)

self.setwindowtitle(

"mainwindow"

)def

paintevent

(self, event)

: painter = qpainter(self)

painter.setbrush(qt.black)

painter.drawrect(self.rect())

if __name__ ==

"__main__"

: window = mainwindow(

) window.show())

)

在paintevent函式內部繪製背景:

import sys

from pyqt5.qtcore import

*from pyqt5.qtgui import

*from pyqt5.qtwidgets import

*class

mainwindow

(qwidget)

:def

__init__

(self, parent=

none):

super()

.__init__(parent)

self.setwindowtitle(

"mainwindow"

)def

paintevent

(self, event)

: painter = qpainter(self)

pixmap = qpixmap(

"background.png"

) painter.drawpixmap(self.rect(

), pixmap)

if __name__ ==

"__main__"

: window = mainwindow(

) window.show())

)

PyQt5 設定視窗居中顯示

pyqt5 設定視窗居中顯示示例 問題 視窗控制項尺寸太大會不在螢幕中心,所以要自定義視窗位置 核心在方法 center 中,獲取桌面螢幕的尺寸,再移動到螢幕中心 class systempinte ce qtwidgets.qwidget,ui systemp 乙個視窗控制項模組 def init...

pyqt5設定視窗居中顯示

import sys class centerform qmainwindow def init self super centerform,self init 設定主視窗的標題 self.setwindowtitle 居中顯示的視窗 設定窗體大小 self.resize 400,300 defce...

Pyqt5設定視窗背景的3種方法

如果要給控制項設定背景或,可以使用seticon 或setpixmap 來完成。coding utf 8 import sys window qmainwindow window.setobjectname mainwindow window.setstylesheet mainwindow 這裡使...