Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Mashin от Июнь 30, 2008, 10:27



Название: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: Mashin от Июнь 30, 2008, 10:27
Здравствуйте. Я не могу разобраться как удалить QTreeWidgetItem из QTreeWidget. В документации ничего по этому вопросу не нашел. Может кто-нибудь написать небольшой пример?


Название: Re: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: Mashin от Июнь 30, 2008, 11:07
С удалением одного выделенного элемента я разобрался, удаляется с помощью
Код:
delete myTreeWidget->currentItem();

Не знаю, правда, насколько это правильно.

А как удалить сразу несколько выделенных элементов, если QTreeWidget я создавал с свойством
Код:
setSelectionMode(QAbstractItemView::MultiSelection);


Название: Re: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: Dodge от Июнь 30, 2008, 11:23
Код:
QTreeWidget * myTreeWidget;
...
QList<QTreeWidgetItem*> selectedItems( myTreeWidget->selectedItems() );
foreach ( QTreeWidgetItem * item, selectedItems )
    delete item;


Название: Re: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: Mashin от Июнь 30, 2008, 11:50
Спасибо


Название: Re: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: CroCIV от Сентябрь 28, 2009, 08:01
Но позвольте, а зачем тогда нужна функция void QTreeWidget::removeItemWidget ( QTreeWidgetItem * item, int column ) ???
Или я ее неправильно понимаю, или она у меня не работает.   :-\


Название: Re: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: Rcus от Сентябрь 28, 2009, 08:18
Она нужна не самом пе себе, а как дополнение к itemWidget/setItemWidget.


Название: Re: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: CroCIV от Сентябрь 28, 2009, 08:31
а как она работает?

вот ее реализация
 inline void QTreeWidget::removeItemWidget(QTreeWidgetItem *item, int column)
{ setItemWidget(item, column, 0); }
 где логика?

И по факту у меня какбэ на месте остается удаляемый элемент дерева нулевого уровня



Название: Re: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: BRE от Сентябрь 28, 2009, 08:39
а как она работает?

вот ее реализация
 inline void QTreeWidget::removeItemWidget(QTreeWidgetItem *item, int column)
{ setItemWidget(item, column, 0); }
 где логика?

И по факту у меня какбэ на месте остается удаляемый элемент дерева нулевого уровня
Этот метод удаляет из элемента виджет, который устанавливался там методом:
void setItemWidget ( QTreeWidgetItem * item, int column, QWidget * widget )


Название: Re: [Qt4] Удаление QTreeWidgetItem из QTreeWidget
Отправлено: CroCIV от Сентябрь 28, 2009, 09:26
откомпилировалось, спасибо