![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Andrewshkovskii |
![]()
Сообщение
#1
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Ситуация : есть выбранный элемент. необходимо его по клику удалить.
пытаюсь вот так :
- не получилось. Пытался удалять получая указатель на выбранный элемент с помощью selectedItems - тоже самое, ничего не удаляется... Как быть ? Быстрое решение :
Есть ли у кого альтернатива и догадка того, почему не удаляется первым способом? Есть ещё вариант с takeItem, но это не совсем "то"... Сообщение отредактировал Andrewshkovskii - 20.12.2010, 19:22 |
|
|
Алексей1153 |
![]()
Сообщение
#2
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: ![]() ![]() ![]() |
Andrewshkovskii, если удаляется элемент, покладенный через визард, то отправь сигнал и в обработчике добавь сендера в очередь на убийство. В таймере очередь обрабатывай
если элемент создан вручную, то тут своя логика, зависящая от устройства хранения контролов |
|
|
Andrewshkovskii |
![]()
Сообщение
#3
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Алексей, я Вас не совсем понял. Элементы добавлены в виджет в "ручную", через код. Я то пофиксил проблему, но мне интересно, почему не работал первый вариант.
|
|
|
igor_bogomolov |
![]()
Сообщение
#4
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Andrewshkovskii |
![]()
Сообщение
#5
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Ну получается так : "забрать элемент, удалить элемент", странно, что приходиться делать так, когда есть "родные" методы QListWidget для удаления указанный/выделенных элементов.
|
|
|
igor_bogomolov |
![]()
Сообщение
#6
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
Andrewshkovskii, о каких родных методах вы говорите? Я таких методов не знаю. Единственный такой метод, это тот что я привёл выше, т.е. takeItem. Но он удаляет итем из модели, не удаляя сам итем. Поэтому приходится его удалять ручками.
Если же нужно удалить именно выделенные элементы, то лучше делать так как написали во втором примере
removeItemWidget делает совсем не то. Он удаляет виджет установленный для итема. |
|
|
Andrewshkovskii |
![]()
Сообщение
#7
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Аааа..спасибо, а то я никак вникнуть не мог!:)
|
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 17.2.2025, 4:15 |