Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: TwiceBorned от Июнь 27, 2009, 20:39



Название: список строк
Отправлено: TwiceBorned от Июнь 27, 2009, 20:39
не подскажите как создать поле со строками, которые можно выделять, удалять выделеные(дополнительной кнопкой сбоку)
пробовал через listview и listwidget, но не вышло(может это надо как то по другому реализовывать?)
прошу прощения если вопрос поднимался или где то описан, я найти не сумел. буду благодарен за ссылку


Название: Re: список строк
Отправлено: Rcus от Июнь 27, 2009, 20:55
http://labs.trolltech.com/blogs/2009/06/25/the-new-pre-release-of-qt-for-s60-is-there/ - для начала(третье видео), а потом читать документацию.


Название: Re: список строк
Отправлено: TwiceBorned от Июнь 27, 2009, 21:05
спасибо. понял что организуется через поле textlist. осталось понять где б его найти что бы добавить на форму(в qt-creator в линуксе(генту))


Название: Re: список строк
Отправлено: Rcus от Июнь 27, 2009, 21:21
Если уж гентушник, то читай хендбукдокументацию, там все есть.


Название: Re: список строк
Отправлено: TwiceBorned от Июнь 27, 2009, 21:25
так. понял. так я делал, добавлять и очищать получается. но как удалить только конкретную выделенную строку? так и не смог найти решение. никаких идей.


Название: Re: список строк
Отправлено: MoPDoBoPoT от Июнь 27, 2009, 22:25
Написать слот с похожим содержимым:
Код:
int row = list->currentRow();

if (row >= 0)
   (list->takeItem(row))->~QListWidgetItem();
и соединить этот слот с сигналом cliced() вашей кнопочки удаления.


Название: Re: список строк
Отправлено: BRE от Июнь 27, 2009, 23:32
Написать слот с похожим содержимым:
Код:
int row = list->currentRow();

if (row >= 0)
   (list->takeItem(row))->~QListWidgetItem();
и соединить этот слот с сигналом cliced() вашей кнопочки удаления.
Дернули явно деструктор, а память кто удалять будет?


Название: Re: список строк
Отправлено: MoPDoBoPoT от Июнь 28, 2009, 00:11
Дернули явно деструктор, а память кто удалять будет?
Блин, тупанул :)


Название: Re: список строк
Отправлено: ритт от Июнь 28, 2009, 00:12
Цитировать
Код:
int row = list->currentRow();

if (row >= 0)
   (list->takeItem(row))->~QListWidgetItem();
ппц...вот это подход к программированию...