crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Как задать/получить отображаемые размеры для кнопки
Sokoloff
  опции профиля:
сообщение 30.8.2010, 17:37
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Пишу своего наследника от QStyledItemDelegate. Понадобилось мне нарисовать кнопки, и столкнулся я с проблемой, при одном и том же заданном rect-е разные темы рисуют кнопки разного размера.

Слева oxigen справа qt-curves, размеры заданны одинаковые.

Т.е. curve делает отступы сверху и снизу, вот как можно узнать размеры этих отступов?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 30.8.2010, 22:15
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(Sokoloff @ 30.8.2010, 21:37) *
при одном и том же заданном rect-е
а ты как этот прямоугольник берёшь? Из QStyleOption?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sokoloff
  опции профиля:
сообщение 30.8.2010, 23:57
Сообщение #3


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Цитата(Litkevich Yuriy @ 30.8.2010, 23:15) *
Цитата(Sokoloff @ 30.8.2010, 21:37) *
при одном и том же заданном rect-е
а ты как этот прямоугольник берёшь? Из QStyleOption?


Я его не беру из QStyleOption я его туда задаю:) Прямоугольник рассчитывается из высоты строки текста, а потом я рисую кнопку. Проблема в том, что высота кнопки это высота серой плашки + тень от кнопки + поля. Так вот последние зависят от темы. И видимая высота кнопки соответственно меняется.

Ладно, проблему я не решил, но снял. Тупо использую картинки вместо кнопок, хотя это и не эстетично, зато дешево, надежно и практично.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 31.8.2010, 7:29
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


вообще этот делегат довольно навёрнутый внутри.
Троли используют для инициализации QStyleOption много разных версий QStyleOptionViewItem* (например, QStyleOptionViewItemV4) в каждой версии видимо свои возможности. И всегда учитывают стиль виджета
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 1.4.2020, 8:30