1
我嘗試了一段時間,只是簡單地在QFrame的背景中顯示圖像,根本不能。我可以看到例如負載在網絡上,但他們都不似乎與我的代碼工作,我不明白爲什麼:pyQT4 py3無法在QFrame背景中顯示圖像
import sys, random
from PyQt4 import QtCore, QtGui
from PyQt4.QtGui import QPalette, QBrush, QPixmap
class MainWin(QtGui.QMainWindow):
def __init__(self):
super(MainWin, self).__init__()
self.initUI()
def initUI(self):
#central widget
self.theboard = Board(self)
self.setCentralWidget(self.theboard)
self.resize(360, 760)
self.setWindowTitle('Name')
self.show()
class Board(QtGui.QFrame):
def __init__(self, parent):
super(Board, self).__init__(parent)
self.initBoard()
def initBoard(self):
print("ddd")
frame = Board
palette = QPalette(self)
palette.setBrush(QPalette.Background,QBrush(QPixmap("ImageTest.jpg")))
frame.setPalette(palette)
def main():
app = QtGui.QApplication([])
mw = MainWin()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
將返回:
TypeError: QWidget.setPalette(QPalette): first argument of unbound method must have type 'QWidget'
如果我不去通過我QFrame在一個變量,做這樣:
palette = QPalette(self)
palette.setBrush(QPalette.Background,QBrush(QPixmap("ImageTest.jpg")))
self.setPalette(palette)
沒有更多的錯誤,但我的背景仍是空白。同樣的事情,如果我只是嘗試填充顏色而不是圖像。
這真是太好了非常感謝你的回答,現在一切都很好。 – 2014-10-06 19:02:46