Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Общие вопросы _ Как найти все итемы?

Автор: RazrFalcon 2.8.2011, 23:40

К примеру у меня есть QListWidget
Заполняю его так:

for (int i = 0; i < list.count(); ++i) {
    QListWidgetItem *item = new QListWidgetItem(list.at(i),listWidget);
    listWidget->addItem(item);
}

Как мне получить эти все item которые я создал? И выполнить item->text();.

Или нужно создать: QList<QListWidgetItem*>, и уже с ним работать?

Автор: Алексей1153 3.8.2011, 6:30

попробуй так

for (int i = 0; i < listWidget->count(); ++i)
{
   QListWidgetItem *item = listWidget->item(i);
   if(item)
   {
         item->text();
   }
}

Автор: RazrFalcon 3.8.2011, 9:34

Нет, забыл написать что у меня там виджет.

То есть нужно было делать так (в моем случае найти выбран чекбокс или нет):

for (int i = 0; i < listWidget->count(); ++i)
{
    QWidget *item = listWidget->itemWidget(listWidget->item(0));
    QCheckBox *chBox = item->findChild<QCheckBox*>();
    qDebug()<<chBox->isChecked();
}

Автор: Litkevich Yuriy 3.8.2011, 18:02

RazrFalcon, тема к Qt Ввод/Вывод, Сеть. Межпроцессное взаимодействие не относится

Автор: RazrFalcon 3.8.2011, 18:52

Окей.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)