Почему Qt добавляет более трех столбцов, когда я использую restoreState() в QTableWidget?

StackOverflow https://stackoverflow.com/questions/915352

  •  06-09-2019
  •  | 
  •  

Вопрос

Мой код выглядит как-то следующим образом:

table = QTableWidget()
table.horizontalHeader().restoreState(settings.value("savedState"))
table.setColumnCount(3)

settings.setValue("savedState", table.horizontalHeader().saveState())

Если я запущу его в первый раз, там будет всего 3 заголовка столбца.Во второй раз их 6, а в третий 9...Странная вещь заключается в том, что table.columnCount() всегда равно 3.Если я удалю table.setColumnCount(3) здесь вообще нет колонок.

Почему это происходит и является ли это ошибкой или преднамеренным?

Обновить

Добавление table.clearContents() до того , как table.setColumnCount(3) заставил это сработать.Я все еще думаю, что это ошибка.

Это было полезно?

Решение

Что это за платформа и какая версия Qt? http://chaos .troll.no /~харц/табличные столбцы.tar кажется, работает нормально, используя последнюю версию Qt 4.5

Другие советы

Что происходит с?

table = QTableWidget();
table.setColumnCount(3);
table.horizontalHeader().restoreState(settings.value("savedState"));
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top