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

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

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Виджет, фиксирующий свои размеры внутри QTabWidget  (Прочитано 10219 раз)
Serg
Гость
« Ответ #15 : Октябрь 14, 2011, 00:52 »

В общем, из дебага, проведенного над "бутербродом" из доквиджета-табвиджета-стеквиджета-тестпушбуттона я сделал выводы, что во всем виноват табвиджет. Он возвращает неправильный minimumSizeHint().width(), если у него закладки расположены сбоку и неправельный minimumSizeHint().height(), если у него горизонтальное расположение закладок. От того и лейаут плавает.

Я унаследовался от табвиджета и переопределил ему процедуру minimumSizeHint(). Тот код, который содержится в переопределенной процедуре minimumSizeHint() был скопирован (и упрощен) из QTabWidget::minimumSizeHint(). Я удалил (для простоты) с него все части кода, которые не используются в моем табвиджете. Теперь на табвиджете можно размещать элементы, способные фиксировать свои размеры (такие как тестпушбуттон).

Код с переопределенной minimumSizeHint() для доквиджета представлен в спп файле. Работоспособность кода была проверена на стилях "windows", "motif", "cde", "plastique" "cleanlooks" и "windowsxp".

Спасибо за внимание.
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


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