Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > QT4 Увеличение размера таблицы. |
Автор: Bars_rb 19.5.2008, 12:06 |
Такой вопрос. Есть таблица. QTableWidget. При создании она 2х1. Но во время работы надо ее увеличить. Делая setRowCount(5) количество строк увеличивается, но туда нельзя ничего записать. Ковыряя сырцы понял, что надо сделать setItem для каждой ячейки. Но при этом для каждой надо создать отдельный элемент типа QTableWidgetItem. Я пробовал создать один, и всем ячейкам его присвоить - не хочет. ПО этому вопрос. Как это дело можно обойти, либо автоматом все ячейки сделать доступными. В принципе в таблице будет только текст. По этому мож есть какой-то другой компонент? |
Автор: JackYF 19.5.2008, 14:34 | ||
да. зачем? |
Автор: Bars_rb 20.5.2008, 12:55 |
QTableWidgetItem *__tableItem = new QTableWidgetItem(); table->setItem(0, 0, __tableItem); QTableWidgetItem *__tableItem1 = new QTableWidgetItem(); table->setItem(0, 1, __tableItem1); QTableWidgetItem *__tableItem2 = new QTableWidgetItem(); table->setItem(1, 0, __tableItem2); Вот так происходит, если делать дизигнером. то есть он сам для каждой ячейки создает указатель на QTableWidgetItem. А у меня количество ячеек не известно. И как в цикле каждой присвоить этот указатель через setItem - я не знаю. Собстно в этом вся проблема. |
Автор: XavierElf 20.5.2008, 13:33 | ||
ну так сделай так:
|
Автор: archimed7592 20.5.2008, 14:22 | ||||
|
Автор: Bars_rb 20.5.2008, 18:14 |
Всем огромное спасибо. XavierElf, я пытался, но немного по другому. Так не пробовал. Оказалось - работает. ![]() archimed7592, и как-то так я тоже пытался, но видимо что-то не то делал. Твой способ как-то немного красивее смотрится. Спасибо. |