Поговорим об анимации?) |
Здравствуйте, гость ( Вход | Регистрация )
Поговорим об анимации?) |
Elfinit |
9.11.2009, 11:35
Сообщение
#1
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
В связи с выходом Qt 4.6 (пусть и беты) с простыми средствами анимирования приложения появилось резонное желание (и даже необходимость) сделать интерфейс более современным. Удалось сделать такие финтифлюшки, как размытие фона при показе модальных окон, "выползание" вспомогательных окон от ближайшего к (сохранённой) позиции края, плавное "растворение" окошек-notifications, прочая анимация....
Хочется теперь анимировать не только окошки, но и панельки. На скриншоте показаны они. Это те, рядом с которыми есть продолговатые кнопки со стрелками. Нажатие, очевидно, показывает/скрывает панельку. Хочется: а) панелька скрыта - навели на кнопку - панелька начинает плавно выезжать поверх окна (т.е. не изменяет расположения виджетов) б) нажали на кнопку - панелька плавно выползла/уползла (резайс остального происходит при фиксации панельки) в) панельки "Свойства альбома", "Свойства фотографии", "Основное", "Альбомы".. тоже хочется, чтобы плавно выползали/уползали. any ideas? Сообщение отредактировал Elfinit - 11.11.2009, 23:54 |
|
|
Litkevich Yuriy |
9.11.2009, 11:42
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
any ideas? у тролей в лаборатории навалом примеров анимации.а) панелька скрыта - навели на кнопку - панелька начинает плавно выезжать поверх окна (т.е. не изменяет расположения виджетов) GraphicsDojo\s-curve только сделать выезд на окноб) нажали на кнопку - панелька плавно выползла/уползла (резайс остального происходит при фиксации панельки) в этот момент устанавливать виджету родителя [и засовывать в компоновщик]s-curve компилится и с помощью Qt 4.4.х |
|
|
Elfinit |
9.11.2009, 12:22
Сообщение
#3
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
|
|
|
Litkevich Yuriy |
9.11.2009, 13:15
Сообщение
#4
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
SABROG |
9.11.2009, 19:25
Сообщение
#5
|
Профессионал Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34 |
Скрины мне почему-то клиент Picassa напоминают.
Цитата размытие фона при показе модальных окон Каким образом? |
|
|
Elfinit |
10.11.2009, 11:06
Сообщение
#6
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
Скрины мне почему-то клиент Picassa напоминают. На самом деле больше на лайтрум ориентировались, когда придумывали скин) Из Пикасы немного позаимствовано...Только ползунок зума, да и тот в новой версии лайтрума появился, но более убогий,чем в пикасе.. Каким образом? Очень просто (правда, в итоге заменили размытие, на "пелену". Для размытия QGraphicsColorizeEffect нужно заменить на QGraphicsBlurEffect
Сообщение отредактировал Elfinit - 10.11.2009, 11:08 |
|
|
Elfinit |
13.11.2009, 17:46
Сообщение
#7
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
Такой вопрос: кто-нибудь знает, как сделать прозрачность для QMainWindow?
Вызов setWindowOpacity не даёт эффекта. В исходниках:
Собственно, по этому условию и происходит выход. Как быть?) |
|
|
Litkevich Yuriy |
13.11.2009, 17:54
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
из кода понятно, что выход осуществляется если виджет не окно, однако экземпляр QMainWindow, всегда окно.
|
|
|
Elfinit |
13.11.2009, 18:02
Сообщение
#9
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
Да, когда я ковырялся с этим, мне показалось удивительным, что isWindow возвращает false. Сейчас ещё раз в код заглянул и понял, что жутко тупанул.....Вызываю setWindowOpacity не для объекта-окна, а для другого объекта, который это окно "контролирует" и имеет на него указатель...
|
|
|
maxvanceffer |
18.11.2009, 5:34
Сообщение
#10
|
Студент Группа: Участник Сообщений: 72 Регистрация: 30.5.2009 Из: Moldova Пользователь №: 790 Спасибо сказали: 0 раз(а) Репутация: 0 |
Цитата как размытие фона при показе модальных окон А можно спросить как ты это сделал ? Помоги плиз а такая же задача стоит ?! Сообщение отредактировал maxvanceffer - 18.11.2009, 5:35 |
|
|
Текстовая версия | Сейчас: 29.3.2024, 17:15 |