Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Etud от Июль 18, 2010, 15:17



Название: Изменение QTableWidget на основе флага
Отправлено: Etud от Июль 18, 2010, 15:17
Имеется таблица QTableWidget, с левой стороны простой список QListWidget.
При выборе иконки списка (например, флага таблицы = 1) таблица должна изменяться на новую с полями, соответсвующими флагу.

Добавляю итемы так:

Код
C++ (Qt)
//1
lab1[i] = new QLabel("http://");
twi1[i] = new QTableWidgetItem(lab1[i]->text() );
twi1[i]->setIcon( QIcon(":/ris/ris2.png") );
table->setItem(0, 0, twi1[i]);
//2
myWid = new MyWidget;;
table->setCellWidget(0, 1, myWid);
 
 

При клике мышкой в слоте:
Код
C++ (Qt)
table->takeItem(0,0);
table->takeItem(0,1);
 
           table->clearContents();
table->setRowCount(0);
 
 
if (flag_action[0] == 1)
{
table->insertRow(0);
 
table->setItem(0, 0, twi1[0]);
table->setCellWidget(0, 1, myWid);
}
 

При работе с методом setItem(0, 0, twi1[0]) все хорошо, а вот setCellWidget(0, 1, myWid) ничего не добавляет в таблицу.

Метод takeItem(0,1) не помогает.


Название: Re: Изменение QTableWidget на основе флага
Отправлено: Etud от Июль 19, 2010, 14:25
Неужели никто не подскажет аналог метода takeItem(), но только для моего виджета.

Т.е. надо убрать его из таблицы

Или куда копнуть ?