Klipfolio--мне когда-то говорили, что это сделано/можно сделать на Builder,
Каким образом, можно сделать такие мягкие переливы, итп ? + там неплохо реализованы скины и всякие перетаскивания. Супер --все можно тягать, и даже текст можно тягать внутри крошечной области + курсоры разные
С какой стороны к этому подходить ?
Может знаете, какой-нибудь способ или возможно знаете, где найти сорцы этого, или любого другого проекта, с похожей графикой. Кстати, Klipfolio вроде как идет в том числе под MPL, т.е, кажется, что сорцы должны быть open.
Заранее спасибо
Здравствуйте, flax, Вы писали:
F>Klipfolio--мне когда-то говорили, что это сделано/можно сделать на Builder, F>Каким образом, можно сделать такие мягкие переливы, итп ? + там неплохо реализованы скины и всякие перетаскивания. Супер --все можно тягать, и даже текст можно тягать внутри крошечной области + курсоры разные
Спасибо, но мне нужна не функциональность (работа с веб-сервисами + xml), а лишь аналогичный(стиль) внешний вид. Мне кажется,что существуют приложения с другой функциональностью, но аналогично красивые. Как это сделать? Куда копать???
Re[3]: очень красивый интерфейс, как такой сделать??
Здравствуйте, PepperLover, Вы писали:
PL>А в чем проблема-то? PL>Рисуешь градиенты и всякие прибамбасины в Photoshope PL>сохраняешь в *.bmp, а потом выводишь в background'e
а линейки прокрутки и другие элементы как ? Или все рисованое?? Так как это оно не расспадается, когда это все двигаешь, дергаешь, сужаешь ?
Здравствуйте, flax, Вы писали: F>а линейки прокрутки и другие элементы как ? Или все рисованое?? Так как это оно не расспадается, когда это все двигаешь, дергаешь, сужаешь ?
А где там линейки прокрутки? Все скины имеют одинаковые размеры; часть бэкграундов тайлится, часть скейлится. Модная фишка — смена hue, фактически это означает что у них нет одной из HSV компонент в картинках (либо какая-то одна выбрана для смены, а все остальные остаются на месте).
Вообще, теория скинов в том, что если тебе нужен неравномерный скейл, то вместе с картинкой задаются 4 числа. Эти числа режут прямоугольник картинки на 9 областей:
Числа — это соответстующие расстояния разрезов от краев битмапа. Теперь, когда тебе надо закрасить прямоугольник другого размера, ты делаешь вот что:
1. Области 1, 3, 7 и 9 рисуются по углам в натуральную величину
2. Области 2 и 8 сжимаются/растягиваются по горизонтали так, чтобы занять все отведенное место
3. Области 4 и 6 сжимаются/растягиваются по вертикали так, чтобы занять все отведенное место
4. Область 5 сжимается/растягивается по обоим координатам.
Именно так устроены скины в винде XP, благодаря чему уголки окон остаются правильной формы независимо от размера.
... << RSDN@Home 1.1 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Sinclair, Вы писали:
S> Модная фишка — смена hue, фактически это означает что у них нет одной из HSV компонент в картинках (либо какая-то одна выбрана для смены, а все остальные остаются на месте).
Можно подробнее, если не очень сложно??
S>Вообще, теория скинов .....
Спасибо, огромное, про картинки и схему дошло очень хорошо.
S> где там линейки прокрутки?
1. А как они поменяли картинки на кнопках --свернуть, закрыть, итп. Просто вставили свою картинки + события? А стандрартные куда? Или есть невидимая форма?
2. А как обычно перекрашиваются скроллбары ? Например в IE, итп ?
3. Там еще прикол такой, что если "взял" текст внутри, до его можешь таскать, даже если курсор вышел далеко за область видимости данного окна, текст все равно перемещается ? Это каким таким макаром
Здравствуйте, flax, Вы писали:
F>Можно подробнее, если не очень сложно??
Ну, нативным представлением для экранных битмапов является RGB. Но он неудобен для человека. Более удобное представление цветового пространства — HSV, или Hue/Saturation/Volume (Оттенок/насыщенность/яркость). Если взять картинку, в которой у всех точек Hue одинаковый, а отличается только S и V, то она будет выглядеть как "черно-белая", только раскрашенная в тот оттенок, который Hue. Меняя этот Hue получишь ту же картинку, но тонированную в другой оттенок.
Вот они это и делают. Либо они согласовнно меняют Hue у всех точек, либо имеют один специально выделенный Hue (например, 0), который и заменяют на тот, который ты укажешь. F>1. А как они поменяли картинки на кнопках --свернуть, закрыть, итп. Просто вставили свою картинки + события? А стандрартные куда? Или есть невидимая форма?
Они не меняли. Они просто полностью рисуют окно сами. Не обязательно давать винде рисовать что-то в твоем окне (даже в т.н. неклиентской области — т.е. заголовке и границе). F>2. А как обычно перекрашиваются скроллбары ? Например в IE, итп ?
Тут я не очень понял. В IE просто можно задавать цвет отдельных элементов скроллбара. В XP скроллбар рассматривается как сочетание кучи элементов (стрелки, thumb, фон и т.п.), каждый из которых скинуется независимо по схеме, которую я тебе уже описал. F>3. Там еще прикол такой, что если "взял" текст внутри, до его можешь таскать, даже если курсор вышел далеко за область видимости данного окна, текст все равно перемещается ? Это каким таким макаром
Ну, само перемещение текста суть операция примитивная — выводим его со смещением и все.
А вот перетаскивание работает так: обычно в винде все мышиные события уходят в то окно, которое под курсором. Но при операциях перетаскивания окно может потребовать с помощью функции SetMouseCapture перенаправлять все сообщения мыши себе, независимо от координат. Чтобы такое окно не могло украсть чужие сообщения, такой режим доживает ровно до отпускания кнопки мыши. Так работает resize окон и drag/drop.
... << RSDN@Home 1.1 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Достаточно интересная тема, правда фиг где можно найти по ней информацию. Всякий либо молчит либо информация уж сильно разрозненная. Вроду почитав посты — вроде бы и понятно что-то. И всёже: Скины скинами, а как тогда простое, ну например скрулбоксы и т.д. Короче все элементарные контролы. Как наложить на них этот скин. Можно подробнее. Просто этим не занимался — но вот приперло: надо.
Здравствуйте, flax, Вы писали:
F>>>Куда копать??? H_D>>WM_NC*
F>Это про перехват событий в неклиентской области формы (в заголовке окна итп)
F>Thanks, но как сделать такой дизайн? Согласитесь, он _сильно_ отличается, от стандартных
Ага, точно... именно перехват событий...
WM_NCPAINT — перерисовка бордюрчика/меню и прочих
WM_NCACTIVATE — активация... она НЕ вызовет WM_NCPAINT, но перерисует форму....
WM_NCMOUSEMOVE — мышь... сама прорисовывает кнопочки на окне... и многое другое...
короче, как ни крути — все равно придется ловить эти сообщения... для начала — попробуй просто нарисоваться как winamp...
... << RSDN@Home 1.1.2 beta 1 >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Здравствуйте, Hacker_Delphi, Вы писали:
H_D>Ага, точно... именно перехват событий... H_D>WM_NCPAINT — перерисовка бордюрчика/меню и прочих H_D>WM_NCACTIVATE — активация... она НЕ вызовет WM_NCPAINT, но перерисует форму.... H_D>WM_NCMOUSEMOVE — мышь... сама прорисовывает кнопочки на окне... и многое другое... H_D>короче, как ни крути — все равно придется ловить эти сообщения... для начала — попробуй просто нарисоваться как winamp...
Блин!... хоть бы примерчик простенький, как енто самому нарисовать (написать),чтоб работало??
Програмка SkinStudio. Она более или менее дает представление о том как рисуются скины. На сайте stardock.com много еще есть всяких приблуд которые делают прибамбасы. Но это все к винде, возможно и к программе своей можно порисовать скин. Тока вот, как потом это художественное творчество применить на деле (все енто дело программируя)???
Здравствуйте, Schumann, Вы писали:
S>Достаточно интересная тема, правда фиг где можно найти по ней информацию. Всякий либо молчит либо информация уж сильно разрозненная. Вроду почитав посты — вроде бы и понятно что-то. И всёже: Скины скинами, а как тогда простое, ну например скрулбоксы и т.д. Короче все элементарные контролы. Как наложить на них этот скин. Можно подробнее. Просто этим не занимался — но вот приперло: надо.
Блин, все же уже написано! Читай выше и задавай конкретные вопросы.
... << RSDN@Home 1.1 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.