Название: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Апрель 30, 2015, 19:43 Собственно охота сделать выпадающий виджет.
Аналог - http://www.youtube.com/watch?v=czFziUMEhiw#t=284 Интересует именно технология. Кажется, что это просто, но на деле я не вижу куда сначала тыкаться. Вот есть виджет, он занимает определённое место и имеет отрисовку. Теперь нам надо, не изменяя занимаемое им место (чтобы компоновщик не перекорёживало) сделать анимацию выпадения. Как бы это организовать? PS что то в уме крутится, но конкретную идею выцепить не могу. Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Old от Апрель 30, 2015, 19:45 В каком месте на видео искать этот виджет?
Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Апрель 30, 2015, 19:58 на ссылку тыкаешь, открывается ютуб и перематывается автоматом на 4:44 и та дам - показ выпадающего и западающего виджета на цепях.
PS перемотка не срабатывает если тыкать на плеер сразу, надо чуть подождать :) PPS собственно это меню варкрафта 3 :) Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Old от Апрель 30, 2015, 20:00 Ну так виджет может находится вне видимой области родителя. Если плавно изменять координаты, должен получиться такой эффект.
Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Апрель 30, 2015, 20:04 Это кажется простым, если он там один.
Всё усложняется, если он находится с другими виджетами. Изменение координат перекорёжит остальные виджеты. Тем более что в уме имеет место многоуровневый виджет аля "выпадает первый, выпадает второй, выпадает третий". Т.е. если уточнять, то по идее необходимо сделать иллюзию выпадения без сдвига координат. Я понимаю, что тут надо с отрисовкой что то делать, но что. Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Old от Апрель 30, 2015, 20:31 Выпадающий виджет не нужно помещать в layout с другими виджетами и управлять его положением в ручную.
Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Апрель 30, 2015, 20:39 Вы говорите как сделать легче, а я прошу именно такой виджет, который не зависит от положения на экране и может быть запихнут в компоновщик.
Но даже это не решает проблему выпадения, если он "ниже" элемента, из которого должен выпадать и тот не является его родителем. Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: gil9red от Апрель 30, 2015, 22:39 Я бы, наверное, попробовал через графическую сцену сделать :)
/offtop варкрафт 3, дота :) Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Апрель 30, 2015, 23:36 Да не суть где, суть в том, как сделать :D
Алгоритм потом куда угодно можно прикрутить будет :) Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: gil9red от Май 01, 2015, 00:23 Да не суть где, суть в том, как сделать :D Алгоритм потом куда угодно можно прикрутить будет :) Ну ограничение области сцены и анимация цепей и меню "на них" :) Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Май 01, 2015, 01:47 Ну т.е. на 3 выпадающих виджета с разными уровнями "выпадания" нужно 3 сцены? :D
Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Igors от Май 01, 2015, 08:41 Вот есть виджет, он занимает определённое место и имеет отрисовку. На видео он просто рисуется поверх. Если это нужно в лайауте, то вставляете неизменяемого родителя а в нем уже крутите анимированного чайлда.Теперь нам надо, не изменяя занимаемое им место (чтобы компоновщик не перекорёживало) сделать анимацию выпадения. Да, и вообще: подражателей бьют :) Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Май 01, 2015, 09:16 Тут скорее подражатели все мы - вывески на цепях были задолго до нашего рождения.
Т.е. как я понял готового решения нет, алгоритма никто представить не может, кроме как одиночного виджета с родителем :) Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Igors от Май 01, 2015, 09:36 Т.е. как я понял готового решения нет, алгоритма никто представить не может, кроме как одиночного виджета с родителем :) По классике:Цитировать Я думал тут умеют решать а здесь такие же бараны как я :) О каком алгоритме Вы говорите? Как будут двигаться цепи? Ну как надо так и двигайте, здесь другого нет, все равно их придется рисоватьНазвание: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Май 01, 2015, 12:39 Алгоритм работы, а не алгоритм рисовки.
Точнее алгоритм работы включает в себя алгоритм рисовки. Именно этот вопрос я задаю - нужен алгоритм работы. Понятно что оно выпадает, но т.е. оно на тот момент должно уже быть отрисовано, при чем этот рисунок надо двигать вниз как то. ну да не суть, я и не ожидал что дадут ответ на вопрос, больше ждал готовых решений, но их увы нет :D Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Igors от Май 01, 2015, 12:48 ...больше ждал готовых решений.. Ну да, "в духе этого форума" :) Наверное я так и не понял. Напр чем не устраивает простецкая QScrollArea ? Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: __Heaven__ от Май 01, 2015, 13:08 А в примерах Qt подобного не было? Могу путать с qml.
Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Май 01, 2015, 13:16 To Igors повторюсь - 3 виджета, которые должны выпадать с разных позиций, расположенные на одном виджете в компоновщике :)
не спорю, вариант с родителями вполне возможен, но очень ммм... костылен. на каждый виджет придётся создавать своего родителя. PS ммм... Не видел в примерах подобного. Если сможете потратить время и припомнить где видели, буду благодарен :) Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: kuzulis от Май 01, 2015, 21:28 QStackedWidget + QAnimation ?
PS: А проще и быстрее все на QML наклепать.. Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Май 01, 2015, 22:15 Возможно проще и быстрее, но сложнее если его не знаешь :D
Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: kuzulis от Май 01, 2015, 22:40 О, кстати, посмотри как в демках сделано: http://www.youtube.com/watch?v=yblh9ivfK30 може это то что надо.
Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Bepec от Май 03, 2015, 12:16 Спасибо за наводку, посмотрю как там сделано. но после праздников :)
Название: Re: Выпадающий виджет, как бы сделать и есть ли решения? Отправлено: Racheengel от Май 06, 2015, 01:08 http://qt-apps.org/content/show.php/QSint+Widgets+Collection?content=162296
QSint::ActionGroup делает grabWidget и по таймеру анимирует полученную картинку, со слайдингом и сменой прозрачности. При разворачивании по окончании анимации делает видимым реальный виджет, при сворачивании последовательность наоборот. |