![]() |
|
||||||||||
|
|||||
|
listener
|
Ну, зачем так далеко ходить за примерами? Стандартный Windows Media Player с его дефлотным скином тоже в качестве примера подойдет.
Окно всегда имеет прямоугольную форму. Нестандартность обеспечивается заданием особых режимов перерисовки содержимого окна. Напимер, задается определенный регион перерисовки, комбинация регионов и т.п. После графического оформления в скин встраиваются контролы: кнопки (minimize, restore, close), а так же сайзеры, то бишь которые ловят нажатие левой кнопки мышы + драг и шлют окну мессадж навроде WM_SIZING, подменяя таким образом стандартную функцию бордера окна. У WMP такой контрол расположени в правом нижнем углу скинованного окна. Честно говоря, не могу сразу себе представить, как такое можно сделать стандартными средствами цинка. Думается, что вряд ли. Можно попробовать привязать драг флэш-мувиклипа в ролике к mdm.System.SendMessage(), предварительно получив хэндл окна проигрывателя. Но, что-то сомневаюсь.. хватит ли мощностей цинка, что бы обеспечить отсылку нужных сообщений, цинк не все типы данных поддерживат из WinAPI, не говоря уже об указателях и ссылках, максимум - число переслать можно. Ну, или как вариант скиновать окно самому по приведенной выше схеме, что, конечно, более трудоемкий процесс. Но, по-любому, цинк не имеет нужного функционала в своем АПИ. |
![]() |
Часовой пояс GMT +4, время: 09:31. |
|
|
« Предыдущая тема | Следующая тема » |
| Теги |
| resize , transparent , zinc |
|
|