Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: spectre71 от Август 21, 2009, 08:13



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

Кому не лень, посмотрите тест.
Может что не правильно делаю?


Название: Re: QApplication::setStyle() - баги
Отправлено: BRE от Август 21, 2009, 08:25
Кому не лень, посмотрите тест.
Посмотрел. Linux + Qt4.5.2
Менял стили сверху вниз и снизу вверх - никаких глюков.
Напиши с какого стиля на какой переходишь, для появления глюков.


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



Название: Re: QApplication::setStyle() - баги
Отправлено: BRE от Август 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

Вроде все нормально.


Название: Re: QApplication::setStyle() - баги
Отправлено: spectre71 от Август 21, 2009, 08:50
1 - Запуск приложения
2 - Переключился на Cleanlocks
3 - Переключился на Windows
Ты комбобокс ракрывал?
Я писал про выпадающий список комбобокса.


Название: Re: QApplication::setStyle() - баги
Отправлено: BRE от Август 21, 2009, 08:53
Ты комбобокс ракрывал?
Я писал про выпадающий список комбобокса.
Конечно.


Название: Re: QApplication::setStyle() - баги
Отправлено: spectre71 от Август 21, 2009, 09:01
Ты комбобокс ракрывал?
Я писал про выпадающий список комбобокса.
Конечно.

На 1 картинке должен быть виден "55555" или скроллер! Ни того ни другого нет!
У меня на XP по умолчанию XP-шный стиль, так что будет разница.
Попробуй другие комбинации, поставь другой стиль в main (где закомментировано).


Название: Re: QApplication::setStyle() - баги
Отправлено: spectre71 от Август 21, 2009, 09:07
Вот что у меня:


Название: Re: QApplication::setStyle() - баги
Отправлено: BRE от Август 21, 2009, 09:08
На 1 картинке должен быть виден "55555" или скроллер! Ни того ни другого нет!
У меня на XP по умолчанию XP-шный стиль, так что будет разница.
Попробуй другие комбинации, поставь другой стиль в main (где закомментировано).
Поймал.  :(
Достаточно переключиться на Windows и обратно на Cleanlocks, и вылазит белая полоса в ComboBox.


Название: Re: QApplication::setStyle() - баги
Отправлено: spectre71 от Август 21, 2009, 09:18
Я писал этот тест для MAC. Там еще есть глюк. Под Linux не проверял, если не сложно проверь.
Я устанавливаю палитру. Под виндой все ОК. А под MAC если деактивировать окно(например переключиться на другое приложение), а затем снова активировать, то палитра сбрасывается для некоторых виджетов(становиться по умолчанию), например для таблиц.


Название: Re: QApplication::setStyle() - баги
Отправлено: BRE от Август 21, 2009, 09:23
Я писал этот тест для MAC. Там еще есть глюк. Под Linux не проверял, если не сложно проверь.
Я устанавливаю палитру. Под виндой все ОК. А под MAC если деактивировать окно(например переключиться на другое приложение), а затем снова активировать, то палитра сбрасывается для некоторых виджетов(становиться по умолчанию), например для таблиц.
С палитрой ничего не заметил, а по комбобоксу еще непонятки. Такие косяки воспроизводятся не всегда одними и теми же действиями + после нескольких переключений все может нормализоваться.  ???


Название: Re: QApplication::setStyle() - баги
Отправлено: shadone от Август 21, 2009, 14:38
пишите в таск-трекер (http://qt.nokia.com/developer/task-tracker).


Название: Re: QApplication::setStyle() - баги
Отправлено: spectre71 от Август 21, 2009, 15:37
Я писал этот тест для MAC. Там еще есть глюк...
Я устанавливаю палитру. Под виндой все ОК. А под MAC если деактивировать окно(например переключиться на другое приложение), а затем снова активировать, то палитра сбрасывается для некоторых виджетов(становиться по умолчанию), например для таблиц.
Кто-нибудь еще, проверьте под маком. У меня точно сбрасывается на default "QPalette::Active, QPalette::Highlight"  "QPalette::Active, QPalette::HighlightedText" для таблицы и комбобокса, Inactive точно не помню, возможно то же.


Название: Re: QApplication::setStyle() - баги
Отправлено: Авварон от Август 28, 2009, 22:28
подтверждаю баг с палитрами (не ставится виндовская до альттаба). С комбобоксом все ок. Сорри за ап темы)
added: да, и с комбобоксом тоже