QTabWidget. setTabsClosable(). Закрытие табов, коннект tabCloseRequested(int) |
Здравствуйте, гость ( Вход | Регистрация )
QTabWidget. setTabsClosable(). Закрытие табов, коннект tabCloseRequested(int) |
fe120 |
8.2.2010, 22:28
Сообщение
#1
|
Студент Группа: Новичок Сообщений: 13 Регистрация: 6.1.2010 Пользователь №: 1354 Спасибо сказали: 1 раз(а) Репутация: 0 |
Всем доброго времени суток.
Занимаюсь разбирательством с QMainWindows и QTabWidget. С первым впрочем все понятно. Со вторым же возникла следующая проблема: Необходимо по нажатию на кнопку closetab на самой табе соответственно и закрывать табу. Создание табы реализовано следующим образом:
При такой реализации получается что табы успешно создаются по нажатию кнопки, а уничтожаются,при нажатии на closetab, несколько не понятно, а точнее уничтожаются все табы находящиеся после закрываемой,включая закрываемую. более чем уверен что ошибка кроется в моей невнимательности... На изображениях ниже показаны эти ситуации(сверху вниз) 1 - созданы 7 табов. 2 - наводим на кнопку closetab 4 табы 3 - после нажатия убираются табы 4 - 7 включительно. Ниже представлен полный код создания окна: Раскрывающийся текст
так же интересует следующее: при removeTab(index) происходит ли delete виджета который добавлен на табу, или же нада вручную сперва удалять виджет, а только после ремовить табу. Заранее большое спасибо откликнувшимся на возникшую проблемку. |
|
|
Litkevich Yuriy |
8.2.2010, 23:01
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
fe120 |
8.2.2010, 23:14
Сообщение
#3
|
Студент Группа: Новичок Сообщений: 13 Регистрация: 6.1.2010 Пользователь №: 1354 Спасибо сказали: 1 раз(а) Репутация: 0 |
хм..
вновь создал 7 табов, жму на закрытии 4-ой, в консоли следующее:
тоесть при одном нажатии он множество раз прокручивает и удаляет таб который встал на индекс с номером 4 и так до тех пор пока не удалит все, что находятся правее удаляемого... проблемму засекли, решение не соображу |
|
|
Litkevich Yuriy |
9.2.2010, 2:21
Сообщение
#4
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
fe120, А версия Qt какая?
Вот мой тест (все вкладки статические, созданы в дизайнере): Qt_test_16.zip ( 2,78 килобайт ) Кол-во скачиваний: 257 Проверил на Qt 4.5.3 и Qt 4.6.0 MinGW/Виндовоз 2к Багу НЕ подтверждаю |
|
|
fe120 |
9.2.2010, 12:20
Сообщение
#5
|
Студент Группа: Новичок Сообщений: 13 Регистрация: 6.1.2010 Пользователь №: 1354 Спасибо сказали: 1 раз(а) Репутация: 0 |
и правду говорят утро вечера мудренее...
нашел абсолютно глупейшую ошибку... А что касательно 2 вопроса? Необходимо ли вручную удалять виджет привязанный к табе, для освобождения памяти? Или же любезный QTabWidget::removeTab(index), все организует сам? |
|
|
Litkevich Yuriy |
9.2.2010, 12:45
Сообщение
#6
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
fe120 |
9.2.2010, 19:52
Сообщение
#7
|
Студент Группа: Новичок Сообщений: 13 Регистрация: 6.1.2010 Пользователь №: 1354 Спасибо сказали: 1 раз(а) Репутация: 0 |
|
|
|
Litkevich Yuriy |
9.2.2010, 20:16
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Гость_Гость_* |
12.8.2010, 11:26
Сообщение
#9
|
Гости |
и какая же ошибка была?
|
|
|
Текстовая версия | Сейчас: 23.11.2024, 19:45 |