Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: slan от Август 02, 2011, 11:19



Название: QTableWidget очистить строку
Отправлено: slan от Август 02, 2011, 11:19
Вот возник такой вопрос: как очистить строку?
Нашел только RemoveRow, но это не то.
Пробую так:
Код:
QTableWidget *tvGoods = new QTableWidget(3, 8, this);;
QTableWidgetItem *wiItem = new QTableWidgetItem("");
for(int i = 0; i <= 7; i++)
            tvGoods->setItem(0, i, wiItem);
Очищается лишь первая ячейка в строке, остальные не изменяются. Что делаю не так?


Название: Re: QTableWidget очистить строку
Отправлено: kambala от Август 02, 2011, 11:29
для каждой ячейки надо новый QTableWidgetItem создавать.
Код
C++ (Qt)
int cols = 8;
QTableWidget *tvGoods = new QTableWidget(3, cols, this);
for (int i = 0; i < cols; ++i)
   tvGoods->setItem(0, i, new QTableWidgetItem);


Название: Re: QTableWidget очистить строку
Отправлено: slan от Август 02, 2011, 11:32
для каждой ячейки надо новый QTableWidgetItem создавать.
Код
C++ (Qt)
int cols = 8;
QTableWidget *tvGoods = new QTableWidget(3, cols, this);
for (int i = 0; i < cols; ++i)
   tvGoods->setItem(0, i, new QTableWidgetItem);

Спасибо, примерно так я и думал. Однако кажется странным, что нет стандартных методов (нашел только очистить всю таблицу)


Название: Re: QTableWidget очистить строку
Отправлено: GreatSnake от Август 02, 2011, 11:45
Цитировать
Однако кажется странным, что нет стандартных методов (нашел только очистить всю таблицу)
Ну почему же?
Код
C++ (Qt)
QTableWidget *tvGoods;
for( int i = 0; i < tvGoods->model()->columnCount(); i++ )
   tvGoods->model()->setData( tvGoods->model()->index( row, i ), QVariant() );


Название: QTableWidget просмотр текста который невлазит в ячейку
Отправлено: Dima1985 от Август 02, 2011, 20:08
Здравствуйте
Проблема в следующем:
Есть таблица QTableWidget. В ней есть столбики, размера которых менять нельзя.
Но строчки некоторых ячеек не помещаются  в ячейки, как сделать так, чтобы при наводки мыши на ячейку с длинным текстом, значения ячейки прорисовывалось на соседних ячейках полностью?