Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
zss |
22.10.2009, 13:16
Сообщение
#1
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 112 Регистрация: 9.6.2009 Пользователь №: 815 Спасибо сказали: 0 раз(а) Репутация: 0
|
не понял как очистить все вкладки.
Например для QTabWidget есть метод clear. |
|
|
|
|
kwisp |
22.10.2009, 14:30
Сообщение
#2
|
|
астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23
|
ну нет и не беда .
удали через removeItem(); П.С. почему название темы не отражает сути вопроса? Сообщение отредактировал kwisp - 22.10.2009, 14:33 |
|
|
|
|
zss |
22.10.2009, 20:55
Сообщение
#3
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 112 Регистрация: 9.6.2009 Пользователь №: 815 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(kwisp @ 22.10.2009, 15:30) Link ну нет и не беда . удали через removeItem(); не получается, т.к. после первого же удаления похоже смещаются внутренние данные. В результате не все страницы удаляются. Ну типа удаление элемента контейнера через итератор в цикле. Приходится после удаления корректировать итератор. |
|
|
|
|
Litkevich Yuriy |
22.10.2009, 22:44
Сообщение
#4
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(zss @ 23.10.2009, 0:55) Link Ну типа удаление элемента контейнера через итератор в цикле. Приходится после удаления корректировать итератор. используя итератор ты должен удалять один и тот же элемент
|
|
|
|
|
zss |
23.10.2009, 4:44
Сообщение
#5
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 112 Регистрация: 9.6.2009 Пользователь №: 815 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(Litkevich Yuriy @ 22.10.2009, 23:44) Link используя итератор ты должен удалять один и тот же элемент не понял ? |
|
|
|
|
Litkevich Yuriy |
23.10.2009, 10:01
Сообщение
#6
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
zss, приведи свой код
|
|
|
|
|
zss |
24.10.2009, 14:24
Сообщение
#7
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 112 Регистрация: 9.6.2009 Пользователь №: 815 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(Litkevich Yuriy @ 23.10.2009, 11:01) Link zss, приведи свой код сейчас просто цикл for (int i = 0; i < countItems; ++i) { toolBox->removeItem(i); } |
|
|
|
|
ViGOur |
24.10.2009, 14:40
Сообщение
#8
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40
|
Нужно удалять не с первой вкладки, а споследней.
Если делать так как ты это делаешь то при countItems==10, то удалив 5 элементво в toolBox останется 5, а при следующей итерации ты будешь удалять 6 элемент, которого нет. |
|
|
|
|
Litkevich Yuriy |
24.10.2009, 15:15
Сообщение
#9
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Всегда удаляем последний, если он есть
|
|
|
|
![]() ![]() ![]() |
|
|
Текстовая версия | Сейчас: 19.8.2025, 23:23 |