PyQt5的新功能......这是一个非常基本的问题。
我想在窗口小部件的布局中添加图像。此小部件是我的应用程序的主窗口/根小部件。我使用以下代码,但收到错误消息。
import sys
from PyQt5.QtGui import QImage
from PyQt5.QtWidgets import *
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self.setGeometry(300,300,300,220)
self.setWindowTitle("Hello !")
oImage = QImage("backgound.png")
oLayout = QVBoxLayout()
oLayout.addWidget(oImage)
self.setLayout(oLayout)
self.show()
if __name__ == "__main__":
app = QApplication(sys.argv)
oMainwindow = MainWindow()
sys.exit(app.exec_())
TypeError: QBoxLayout.addWidget(QWidget, int stretch=0, Qt.Alignment alignment=0): argument 1 has unexpected type 'QImage'
显然,QLayoutWidget不接受QImage作为输入。是否有解决方法让图像在QWidget中显示为括号?
答案 0 :(得分:2)
QVBoxLayout类垂直排列小部件。
import MySQLdb
cnn = MySQLdb.connect(user="login", passwd="passwd", db="some db") # subject to hang
cur = cnn.cursor()
cur.execute("some sql") # subject to hang
cnn.commit() # maybe subject to hang
cur.close()
不是小部件。
,例如QImage
,QmainWindow
您可以使用
QLabel
在我的机器上,这不适用于widget.setStyleSheet(„ background-image: url(backgound.png);“)
。在这种情况下,您可以使用以下代码重写:
QWidget