【问题标题】:Auto Resize of Label in PyQt4PyQt4中标签的自动调整大小
【发布时间】:2018-11-24 11:10:03
【问题描述】:

我在 PyQt4 中添加了一个包含图像的标签。此图像在未最大化时完全适合窗口。我的目标是标签应该自动调整大小并完全适合窗口,即使在最大化时也是如此。我的代码如下:

class Ui_MainWindow(object):
   def setupUi(self, MainWindow):
       MainWindow.setObjectName(_fromUtf8("MainWindow"))
       MainWindow.resize(1047, 600)
       self.centralwidget = QtGui.QWidget(MainWindow)
       self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
       self.label = QtGui.QLabel(self.centralwidget)
       self.label.setGeometry(QtCore.QRect(0, 0, 1081, 551))
       self.label.setText(_fromUtf8(""))
       self.label.setPixmap(QtGui.QPixmap(_fromUtf8("Capture.PNG")))
       self.label.setObjectName(_fromUtf8("label"))
   if __name__ == "__main__":
      import sys
      app = QtGui.QApplication(sys.argv)
      MainWindow = QtGui.QMainWindow()
      ui = Ui_MainWindow()
      ui.setupUi(MainWindow)
      MainWindow.show()
      sys.exit(app.exec_())

请告诉我如何修改我的代码?

【问题讨论】:

    标签: python python-3.x python-2.7 pyqt pyqt4


    【解决方案1】:

    您必须执行以下操作:

    • centralwidget 设置为QMainWindowcentralWidget
    • 使用布局将QLabel 放置在centralwidget 内。
    • 启用QLabelScaledContents 属性。

    class Ui_MainWindow(object):
        def setupUi(self, MainWindow):
            self.centralwidget = QtGui.QWidget(MainWindow)
            MainWindow.setCentralWidget(self.centralwidget) # <--
            lay = QtGui.QVBoxLayout(self.centralwidget)
            self.label = QtGui.QLabel(self.centralwidget)
            self.label.setPixmap(QtGui.QPixmap("Capture.PNG"))
            self.label.setScaledContents(True) # <--
            lay.addWidget(self.label) # <--
    

    【讨论】:

    • 非常感谢。我在标签上有某些按钮,参考标签上的某些点。现在,当标签展开时,这些按钮保留了它们的初始坐标并且不随标签而改变。我们是否有可能确保这些按钮也随着标签的变化而变化!?
    • @MehulBhatia 您希望如何改变您的职位?通过提供minimal reproducible example 创建一个新问题,我可以帮助您。
    • 非常肯定先生@eyllansec。我将创建一个新问题!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-07
    • 1970-01-01
    • 1970-01-01
    • 2019-11-13
    • 2015-10-07
    • 1970-01-01
    相关资源
    最近更新 更多