Russian Qt Forum
Ноябрь 24, 2024, 21:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Прижимаю компоненты addStretch(1), а они всё равно "мерцают" при вставке  (Прочитано 3889 раз)
yarick
Гость
« : Октябрь 31, 2012, 14:17 »

У меня есть QMainWindow, в котором с помощью setCentralWidget я устанавливаю главный виджет с QVBoxLayout-менеджером.
Там добавлены кнопки (QPushButton) и текстовые поля (QTextEdit) - и кнопки выступают в роли свитков - т.е. по нажатию на кнопку - под ней вставляется или удаляется текстовое поле.
Прижимаю всё это снизу addStretch(1).
Когда происходит вставка виджета в эту структуру (insertWidget) - почему-то система странно перестраивается - она сначала растягивается с большими пробелами, а потом резко сжимается (как она и должна быть - в сжатом виде).
Если много кликать по кнопкам-свиткам - то это моргание заметно и режет глаз. Я пытался перед и после перестройки запрещать обновление и перерисовку виджета в через setUpdatesEnabled - но это не помогает.
И ещё после всех компонентов после обновления вставляется пробел большой куда они разворачивались. Если окно свернуть и снова нажать на вставку виджета - то пробел снова внизу вставиться - они туда заезжают в развёрнутом состоянии, когда мерцают

если виджет как отдельное окно через show() показать - то  там проблем не наблюдается...
Записан
QtCoder
Гость
« Ответ #1 : Ноябрь 01, 2012, 08:22 »

Когда-то делал нечто подобное на Layout'e. Была такая же проблема - вставка виджетов происходит очень заметно. Ушел от этого вставляя виджеты в QTableWidget.
Вот пост в моем блоге на эту тему
http://qtcoder.blogspot.ru/2011/09/qwidget-qtablewidget.html
Записан
Bepec
Гость
« Ответ #2 : Ноябрь 01, 2012, 09:41 »

А чем QToolBox не устроил? Ваши "свитки" это он и есть. Сверху чуть гуталином помазать так и вообще - красавец будет.
Записан
yarick
Гость
« Ответ #3 : Ноябрь 01, 2012, 10:43 »

А чем QToolBox не устроил? Ваши "свитки" это он и есть. Сверху чуть гуталином помазать так и вообще - красавец будет.
Мне нужны именно собственные свитки, т.к. я хочу туда текст вставлять и оригинально их обрабртать
Записан
Bepec
Гость
« Ответ #4 : Ноябрь 01, 2012, 13:17 »

Берём класс Qt (любой) и банку гуталина. Наследуемся от класса, пишем свои функции, мажем гуталином -> профит. Имеются ваши собственные свитки с оригинальной обработкой. Правда слегка пахнут гуталином, но это дело опыта. (И марки гуталина)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.041 секунд. Запросов: 21.