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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QApplication::setStyle() - баги  (Прочитано 11592 раз)
spectre71
Гость
« : Август 21, 2009, 08:13 »

QApplication::setStyle() - работает некорректно
Например едет крыша у QComboBox. В зависимости от того  с какого на какой стиль сменили и какой был изначально установлен до создания QApplication:
  - может появится дополнительное пространство(иногда очень большое) за последним элементом списка
  - может появится дополнительное пространство между элементоми списка
  - может обрезаться текст элементов на на несколько точек снизу.
  - может глючить скролинг элементов, не появляется скроллер

Кому не лень, посмотрите тест.
Может что не правильно делаю?
Записан
BRE
Гость
« Ответ #1 : Август 21, 2009, 08:25 »

Кому не лень, посмотрите тест.
Посмотрел. Linux + Qt4.5.2
Менял стили сверху вниз и снизу вверх - никаких глюков.
Напиши с какого стиля на какой переходишь, для появления глюков.
Записан
spectre71
Гость
« Ответ #2 : Август 21, 2009, 08:37 »

Посмотрел. Linux + Qt4.5.2
Менял стили сверху вниз и снизу вверх - никаких глюков.
Напиши с какого стиля на какой переходишь, для появления глюков.
Я смотрел на XP.
1) Закомментируй в main:
 QApplication::setStyle(new QCleanlooksStyle());
2) Запусти и преключись на Cleanlooks
  появится white space в конце списка QComboBox
3) После преключись на Windows
появится дополнительное пространство между элементоми списка

Записан
BRE
Гость
« Ответ #3 : Август 21, 2009, 08:46 »

Посмотрел. Linux + Qt4.5.2
Менял стили сверху вниз и снизу вверх - никаких глюков.
Напиши с какого стиля на какой переходишь, для появления глюков.
Я смотрел на XP.
1) Закомментируй в main:
 QApplication::setStyle(new QCleanlooksStyle());
2) Запусти и преключись на Cleanlooks
  появится white space в конце списка QComboBox
3) После преключись на Windows
появится дополнительное пространство между элементоми списка
Установку стиля в main за комментировал.
Скриншоты:
1 - Запуск приложения
2 - Переключился на Cleanlocks
3 - Переключился на Windows

Вроде все нормально.
Записан
spectre71
Гость
« Ответ #4 : Август 21, 2009, 08:50 »

1 - Запуск приложения
2 - Переключился на Cleanlocks
3 - Переключился на Windows
Ты комбобокс ракрывал?
Я писал про выпадающий список комбобокса.
Записан
BRE
Гость
« Ответ #5 : Август 21, 2009, 08:53 »

Ты комбобокс ракрывал?
Я писал про выпадающий список комбобокса.
Конечно.
Записан
spectre71
Гость
« Ответ #6 : Август 21, 2009, 09:01 »

Ты комбобокс ракрывал?
Я писал про выпадающий список комбобокса.
Конечно.

На 1 картинке должен быть виден "55555" или скроллер! Ни того ни другого нет!
У меня на XP по умолчанию XP-шный стиль, так что будет разница.
Попробуй другие комбинации, поставь другой стиль в main (где закомментировано).
Записан
spectre71
Гость
« Ответ #7 : Август 21, 2009, 09:07 »

Вот что у меня:
Записан
BRE
Гость
« Ответ #8 : Август 21, 2009, 09:08 »

На 1 картинке должен быть виден "55555" или скроллер! Ни того ни другого нет!
У меня на XP по умолчанию XP-шный стиль, так что будет разница.
Попробуй другие комбинации, поставь другой стиль в main (где закомментировано).
Поймал.  Грустный
Достаточно переключиться на Windows и обратно на Cleanlocks, и вылазит белая полоса в ComboBox.
Записан
spectre71
Гость
« Ответ #9 : Август 21, 2009, 09:18 »

Я писал этот тест для MAC. Там еще есть глюк. Под Linux не проверял, если не сложно проверь.
Я устанавливаю палитру. Под виндой все ОК. А под MAC если деактивировать окно(например переключиться на другое приложение), а затем снова активировать, то палитра сбрасывается для некоторых виджетов(становиться по умолчанию), например для таблиц.
Записан
BRE
Гость
« Ответ #10 : Август 21, 2009, 09:23 »

Я писал этот тест для MAC. Там еще есть глюк. Под Linux не проверял, если не сложно проверь.
Я устанавливаю палитру. Под виндой все ОК. А под MAC если деактивировать окно(например переключиться на другое приложение), а затем снова активировать, то палитра сбрасывается для некоторых виджетов(становиться по умолчанию), например для таблиц.
С палитрой ничего не заметил, а по комбобоксу еще непонятки. Такие косяки воспроизводятся не всегда одними и теми же действиями + после нескольких переключений все может нормализоваться.  Непонимающий
Записан
shadone
Гость
« Ответ #11 : Август 21, 2009, 14:38 »

пишите в таск-трекер.
Записан
spectre71
Гость
« Ответ #12 : Август 21, 2009, 15:37 »

Я писал этот тест для MAC. Там еще есть глюк...
Я устанавливаю палитру. Под виндой все ОК. А под MAC если деактивировать окно(например переключиться на другое приложение), а затем снова активировать, то палитра сбрасывается для некоторых виджетов(становиться по умолчанию), например для таблиц.
Кто-нибудь еще, проверьте под маком. У меня точно сбрасывается на default "QPalette::Active, QPalette::Highlight"  "QPalette::Active, QPalette::HighlightedText" для таблицы и комбобокса, Inactive точно не помню, возможно то же.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #13 : Август 28, 2009, 22:28 »

подтверждаю баг с палитрами (не ставится виндовская до альттаба). С комбобоксом все ок. Сорри за ап темы)
added: да, и с комбобоксом тоже
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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