在Qt Designer中创建可滑动的窗口/框架

时间:2019-02-26 23:39:52

标签: python pyqt pyqt4 qt-designer

我不知道该如何正确表达,因为滑块是不同的。

我要创建的是一个具有可调整大小的框架的多框架窗口。 例如Qt Designer本身(左边的圆圈),以及在另一个Java应用程序中看到的(右边的圆圈):

Resizable Windows

我想知道要使用哪种Qt小部件和/或设置哪些属性,以便在它们之间获得这样的调整大小滑块

1 个答案:

答案 0 :(得分:1)

您必须使用QSplitter

import sys
import random
from PyQt4 import QtGui, QtCore

class MainWindow(QtGui.QMainWindow):
   def __init__(self, parent=None):
      super(MainWindow, self).__init__(parent)
      splitter = QtGui.QSplitter()
      self.setCentralWidget(splitter)
      for i in range(4):
         label = QtGui.QLabel(
            text="label {}".format(i),
            alignment=QtCore.Qt.AlignCenter
         )
         color = QtGui.QColor(*random.sample(range(255), 3))
         label.setStyleSheet("background-color:{};".format(color.name()))
         splitter.addWidget(label)

def main():
   app = QtGui.QApplication(sys.argv)
   w = MainWindow()
   w.resize(960, 480)
   w.show()
   sys.exit(app.exec_())

if __name__ == '__main__':
   main()

在Qt Designer中,QSplitter组件不存在,只能通过代码来实现。