小编MWa*_*Waw的帖子

PyQt5 - 调整标签大小以填充整个窗口

from PyQt5 import QtGui, QtCore, QtWidgets

class Window(QtWidgets.QWidget):
    def __init__(self):
        QtWidgets.QWidget.__init__(self)
        self.label = QtWidgets.QLabel(self)
        self.label.setSizePolicy(QtWidgets.QSizePolicy.Ignored, QtWidgets.QSizePolicy.Ignored)
        self.label.resize(800, 600)
        self.label.setContentsMargins(0, 0, 0, 0);
        self.pixmap = QtGui.QPixmap("image.jpg")
        self.label.setPixmap(self.pixmap)
        self.label.setMinimumSize(1, 1)
        self.label.installEventFilter(self)
        layout = QtWidgets.QVBoxLayout(self)
        layout.addWidget(self.label)

    def eventFilter(self, source, event):
        if (source is self.label and event.type() == QtCore.QEvent.Resize):
            self.label.setPixmap(self.pixmap.scaled(
                self.label.size(), QtCore.Qt.KeepAspectRatio))
        return super(Window, self).eventFilter(source, event)

if __name__ == '__main__':

    import sys
    app = QtWidgets.QApplication(sys.argv)
    window = Window()
    window.show()
    window.resize(800, 600)
    sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)

这是我的应用程序,我的目标很简单 - 拥有一个填充整个窗口并在窗口调整大小后调整大小的图像。

这段代码可以很好地调整图像大小,但标签没有覆盖整个窗口,我有那些“边框”。如何删除它们/将标签调整为窗口大小?如果这改变了事情,我正在 Windows 上工作。

窗户外观

这就是我现在得到的效果。

python qt label window pyqt

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

label ×1

pyqt ×1

python ×1

qt ×1

window ×1