crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Значение из QListWidget
++Norton++
  опции профиля:
сообщение 2.11.2008, 1:32
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 98
Регистрация: 5.10.2008
Пользователь №: 380

Спасибо сказали: 0 раз(а)




Репутация:   1  


Как можно взять значение выделенного элемента из QListWidget и записать его в QString? Возможно ли? Полистал документацию, что-то не разобрался...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 2.11.2008, 2:37
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


выделеных элементов может быть несколько, их список можно получить с помошью:
QList<QListWidgetItem *> QListWidget::selectedItems () const

индекс текущего элемента может быть получен:
int currentRow () const

Элемент по индексу строки можено получить так:
QListWidgetItem * QListWidget::item ( int row ) const

у QListWidgetItem есть метод:
QString QListWidgetItem::text () const

и того для текущего элемента:
QListWidget   wgt;
wgt.item(wgt.currentRow ())->text();


ну а для нескольких выделеных элементов, перебирать их все
QListWidget        wgt;
QList<QListWidgetItem *>  lst;
lst = wgt.selectedItems ();
foreach(QListWidgetItem *item, lst)
{
qDebug << "Item text = " << item->text();

}
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
++Norton++
  опции профиля:
сообщение 2.11.2008, 11:17
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 98
Регистрация: 5.10.2008
Пользователь №: 380

Спасибо сказали: 0 раз(а)




Репутация:   1  


Только остался еще один вопрос по этой же теме. А как можно удалить выделенное значение? Пробовал так:
Monitor->removeItemWidget(Monitor->item(Monitor->currentRow()));

Но что-то безрезультатно. А кроме removeItemWidget ничего похожего не нашел.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 2.11.2008, 11:30
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


++Norton++, есть такой метод:
QListWidgetItem * QListWidget::takeItem ( int row )

он вытаскивает элемент и возвращает указатель на него, если тебе вытащеный элемент не нужен, то его надо будет удалить:
Цитата
Items removed from a list widget will not be managed by Qt, and will need to be deleted manually.
Т.к. у него больше нет родителя и некому заним следить.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Гость_*
сообщение 14.11.2008, 15:34
Сообщение #5





Гости








    


А как записать в строку все элементы из QListWidget?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 14.11.2008, 15:41
Сообщение #6


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(Гость_Гость_* @ 14.11.2008, 18:34) *
А как записать в строку все элементы из QListWidget?
если в сообщении №2 ты не нашел ответ (последний пример кода), то ищи по форуму, был готовый ответ на твой вопрос.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 21.12.2024, 17:25