¿Por qué Qt añadir más de tres columnas cuando uso restoreState () en un QTableWidget?

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

  •  06-09-2019
  •  | 
  •  

Pregunta

Mi código es de alguna manera similar a la siguiente:

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

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

Si lo ejecuto la primera vez que sólo hay 3 encabezados de columna. La segunda vez que hay 6 y 9 de la tercera ... Lo extraño es table.columnCount() es siempre 3. Si quito table.setColumnCount(3) no hay columnas en absoluto.

¿Por qué está sucediendo esto y es un error o intencional?

ACTUALIZACIÓN

Adición table.clearContents() antes table.setColumnCount(3) hizo trabajar. Yo sigo pensando que es un error.

¿Fue útil?

Solución

¿Qué plataforma y qué versión de Qt es esto? http://chaos.troll.no/~hhartz/tablecolumns.tar parece trabajar muy bien con lo último en Qt 4.5

Otros consejos

¿Qué ocurre con?

table = QTableWidget();
table.setColumnCount(3);
table.horizontalHeader().restoreState(settings.value("savedState"));
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top