|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Дек 26, 2003 19:40:56 Доброе время суток !!! Господа программеры, мне хотелось бы узнать, как можно организовать интерфейс в стиле Office XP, при создании собственного приложения. Буду очень благодарен тому, кто приведет общие рекомендации по данному аспекту ... Заранее спасибо !!! |
|
|
Дата: Дек 26, 2003 20:09:14 Никак. Они используют Ownerdrawn элементы, которые имеют движок в их либе. Причем API не описан. Единственный вариант - это найти к примеру на CodeGuru либы которые делают подобное. |
|
|
Дата: Дек 27, 2003 12:30:16 rst Ясно, но а общая методика какая должна быть ?? То есть программы не подобие Resource Tuner имеют свою библиотеку common control-ов и вызовы интерфейса приходят к ним, ... или я не правильно мыслю ??? Мне интересно узнать, как это реализовать, пускай даже оно и не стоит затраченных усилий ... Если у кого-то это получилось, то значит это возможно ... |
|
|
Дата: Дек 27, 2003 13:30:27 Именно - имеют свою библиотеку. Чтоб понять как это сделано - смотри в MSDN стиль WS_OWNERDRAW или как он там называется. А вообще - сходи на CodeGuru - там есть примеры. |
|
|
Дата: Дек 28, 2003 13:33:30 korst Там OWNERDRAW, используеться далеко не всегда, например меню там создаёться полностью программно, т.е. окнам (обычным с зарегистрированным классом) присваиваються вид и функции того элемента управления которому надо подражать. А в Office XP, и в других программах используються библиотеки классов, которые и делают такой интерфейс, например меню создаёться в ресурсах, или кнопка, библиотека передирает оттуда координаты, текст, некоторые элементы стиля, и создаёт другую кнопку новую, но програмер работает с той что в ресурсах (например изменить текст), а библиотека фильтрует (чаще DLL), может где то я и не прав. |
|
|
Дата: Дек 29, 2003 02:58:16 Самый простой и, в то же время, самый сложный способ - сделать интерфейс на подобии того, что делалось ранее в досовских программах. Т.е. не использовать контролов и рисовать все элементы формы вручную. Например: при нажатии на определенный (нарисованный) CheckBox, отлавливать нажатие на форме, рассчитывать, находится ли курсор над CheckBox'ом, и если да, то рисовать в нем крестик, занося в определенную флаговую переменную, что он отмечен. Кажется такой метод применен во втором винампе. |
|
|
Дата: Дек 31, 2003 01:28:06 Спасибо за консультацию ... Некоторое для меня прояснилось и вышесказанного ... |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.076 |