Форум сайта python.su
Здравствуйте! Вопрос, наверное, простой, но я уже Google замучил.
Необходимо растянуть QTableView по высоте всей формы.
Как представлено на прикрепленном рисунке.
Код верстки:
#Оновное выравнивание self.boxAnalizTZ.hbox1 = QtGui.QHBoxLayout(self.boxAnalizTZ) #Выравнивание левой колонки self.boxAnalizTZ.formlayout1 = QtGui.QFormLayout() self.boxAnalizTZ.hbox1.addLayout(self.boxAnalizTZ.formlayout1) self.boxAnalizTZ.formlayout1.addRow("Название проекта", self.form1) self.boxAnalizTZ.formlayout1.addRow("Описание проекта", self.form2) self.boxAnalizTZ.formlayout1.addRow(self.radioboxSistema) #Выравнивание правой колонки self.boxAnalizTZ.formlayout2 = QtGui.QFormLayout() self.boxAnalizTZ.hbox1.addLayout(self.boxAnalizTZ.formlayout2) self.boxAnalizTZ.formlayout2.addRow(self.radioboxBoepripas) self.boxAnalizTZ.formlayout2.addRow(self.label1) #Соотношение левой и правой колонки 1:1 self.boxAnalizTZ.hbox1.setStretchFactor(self.boxAnalizTZ.formlayout1, 1) self.boxAnalizTZ.hbox1.setStretchFactor(self.boxAnalizTZ.formlayout2, 1) #Верстка в группе Система self.boxAnalizTZ.vbox1 = QtGui.QGridLayout(self.radioboxSistema) self.boxAnalizTZ.vbox1.addWidget(self.label2, 0, 0) self.boxAnalizTZ.vbox1.addWidget(self.listSistema, 0, 1) self.boxAnalizTZ.vbox1.addWidget(self.buttonAddListSistema, 0, 2) self.boxAnalizTZ.vbox1.addWidget(self.viewSistema, 1, 0, 1, 3) self.boxAnalizTZ.vbox1.addWidget(self.buttonAddParamSistema, 2, 0, 1, 3) #Верстка в группе Боеприпас self.boxAnalizTZ.vbox2 = QtGui.QGridLayout(self.radioboxBoepripas) self.boxAnalizTZ.vbox2.addWidget(self.label3, 0, 0) self.boxAnalizTZ.vbox2.addWidget(self.listBoepripas, 0, 1) self.boxAnalizTZ.vbox2.addWidget(self.buttonAddListBoepripas, 0, 2) self.boxAnalizTZ.vbox2.addWidget(self.viewBoepripas, 1, 0, 1, 3) self.boxAnalizTZ.vbox2.addWidget(self.buttonAddParamBoepripas, 2, 0, 1, 3)
Отредактировано Red_baron (Март 4, 2013 10:37:42)
Прикреплённый файлы: 04-03-2013 12-30-13.jpg (113,8 KБ)
Офлайн
Проблема скорее всего в использовании FormLayout не по назначению.
Лучше сделать VboxLayout в котором будет FormLayout (только с полями) и GroupBox (или что-то другое)
с вертикальной sizePolicy - Expanding
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Expanding)
Офлайн
reclosedev
Проблема скорее всего в использовании FormLayout не по назначению.
reclosedevКогда начал верстать, только осваивая Python и Qt, было желание разобраться в работе компонентов.
почему не используете Qt Designer
Отредактировано Red_baron (Март 5, 2013 13:11:40)
Офлайн