У меня есть следующая функция, чтобы иметь возможность изменить размер первых двух столбцов таблицы в Pyside6, сохраняя при этом третий размер, так как она содержит Combobox и сохраняет соотношения, которые они получают от прямоугольника для таблицы, даже если я сделаю размер всей программы больше или меньше < /p>
def auto_n_manual_resize(self):
self.header.setStretchLastSection(False)
widget_width = self.wordsTable.contentsRect().width()
column0 = self.header.sectionSize(0)
column1 = self.header.sectionSize(1)
scroll = self.wordsTable.verticalScrollBar().sizeHint().width()
verHeadWidth = self.wordsTable.verticalHeader().sizeHint().width()
available_width = (
widget_width - verHeadWidth - scroll - 90
) # the 3rd col should be 90 pix wide
denom = column0 + column1 or 1
if denom == 0:
column0 = column1 = 1
denom = 2
col0_W_per = column0 / denom
col1_W_per = column1 / denom
newCol0Width = int(col0_W_per * available_width)
newcol1Width = int(col1_W_per * available_width)
self.header.sectionResized.disconnect(self.auto_n_manual_resize)
self.wordsTable.setColumnWidth(0, newCol0Width)
self.wordsTable.setColumnWidth(1, newcol1Width)
self.wordsTable.setColumnWidth(2, 90)
self.header.sectionResized.connect(self.auto_n_manual_resize)
self.header.setMinimumSectionSize(60)
self.header.setMaximumSectionSize((available_width))
self.header.setStretchLastSection(True)
< /code>
Код работает «идеально», насколько я вижу, но я получаю это предупреждение, когда запускаю программу < /p>
runtimewarnning: не удалось отключить () из сигнала "sectionResized (int, int, int)". < /P>
< /blockquote>
, которая является странной причиной, прежде чем я разместил отключение и подключение, когда я сразу же изменится, и я буду сразу же, если я буду сразу же, будет сразу же, если я буду сразу же, будет сразу же. Видимый прямоугольник таблицы, когда я изменял размер всего окна программы, так что это работает, но я получаю это предупреждение и не знаю, что делать
Подробнее здесь: https://stackoverflow.com/questions/797 ... cting-func
Изменить размер столбцов таблицы Странные предупреждения в pyside6 при отключении/соединении функции с сигналом ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение