контролы на чистом WinAPI
От: Аноним  
Дата: 08.07.08 07:56
Оценка:
Занялся созданием контролов на чистом WinAPI на Codejock.com нашел примеры окон (уже реализация) решил повторить… сделал окно OVERLAPPED c возможностью resize… в тех примерах, что я нарыл использовалась технология skin-а т.е. графика накладывается на стандартное окно т.к. при Max/Min окна просматривается стандартное окно WinXP, но результат вполне приемлемый…
У меня же окно с 0 и возникли следующие вопросы.

1. 1. Самое интересное, что в тех примерах, как и в стандартных окнах Windows (WS_OVERLAPPED) при изменении размера окна за левый бордюр правый остается на месте а между ним и содержимым окна мелькает фон рабочего стола (если под ним больше ничего нет), т.е. складывается такое впечатление, что окна внутри подвешаны независимо… а затем подгоняются под размеры основного… При изменении размеров просматривается верхняя ограничивающая рамка окна в 1 пиксел… как это объясняется?
2. Как сделать закругленные углы? Т.к. устанавливать регион окна при изменении размеров – тормозит. Слоистое – еще хуже.
3. Возможно ли делать такие окна на базе POPUP/OVERLAPPED(без заголовка) или все же ловить WM_NCPAINT и т.д.? и рисовать заголовок и бордюр в зависимости от того какая ширина бордюра и высота заголовка установлены на данный момент для системы. Т.е. они по размеру (бордюр и заголовок) будут точно такими же как и стандартные?
4. Хотя SPY++ иногда опряделяет что кномки MIN/MAX окна могут быть расположены в области заголовка, а могут быть перенесены в клиентскую область (т.е. отрисованы самостоятельно).
5. Пока поступаю следующим образом в WM_NCCALCSIZE определяю новые размеры окна и делаю картинку на все окно (двойная буферизация) также устанавливаю новый регион окна т.к. у меня resize сделан вручную, при поступлении WM_PAINT – BitBlt, но есть особенность, у меня получается… в стандартных окнах например «блокнот» при быстром увелечении размеров за левый бордюр (тащим влево) наблюдается мерцание окна с правой стороны т.е. как будто окно стремиться уменшиться, затем становиться на свое место… у меня получается наооборот при увеличении окна за левый бордюр все OK, но когда начинаю уменьшать размеры то эффект что окно стремиться уменьшиться, затем становиться на свое место, в математике RESIZE – а ошибок нет это связано только с выводом графики.
6. Где можно найти подробную информацию по созданию нестандартных окон с возможностью изменения размеров, и правильной отрисовке бордюров и т.к. т.к. статические окна можно сделать любой формы,то при создании окон с возможностью изменения размеров возникают проблемы?
Re: контролы на чистом WinAPI
От: sax0n Украина  
Дата: 08.07.08 19:30
Оценка:
Здравствуйте, Аноним, Вы писали:

Я сейчас тоже интересуюься подобным вопросом. ищу некоторые элементы управления на чистом АПИ: кнопки, меню анимированные, Listview... может, ге-то встречали?
Re[2]: контролы на чистом WinAPI
От: s.bogoyavlenskiy  
Дата: 09.07.08 08:45
Оценка: -1
Здравствуйте, sax0n, Вы писали:

S>Здравствуйте, Аноним, Вы писали:


S>Я сейчас тоже интересуюься подобным вопросом. ищу некоторые элементы управления на чистом АПИ: кнопки, меню анимированные, Listview... может, ге-то встречали?


www.codejock.com – хорошие win 32/64 контролы только конечно все платные, есть на www.codeproject.com – free… очень мало информации по этому поводу, я сейчас делаю меню и commanbar в принципе нет ничего сложно за исключением того что много работы… а вообще работа кропотливая, много времени уходит на нюансы но получается очень симпатично, + когда делаешь все самостоятельно то знаешь каждую запятую… легко все видоизменяется, но здесь главное не сама раскраска а функционал, что бы все двигалось и перемещалось не зависимо от того что чудит пользователь…
Re[2]: Скриншот с неактивного дектопа
От: xmen  
Дата: 11.07.08 17:15
Оценка:
Здравствуйте, sax0n, Вы писали:

S>Здравствуйте, Аноним, Вы писали:


S>Я сейчас тоже интересуюься подобным вопросом. ищу некоторые элементы управления на чистом АПИ: кнопки, меню анимированные, Listview... может, ге-то встречали?


Все чистом API

http://www.radasm.com/projects/projects.html
http://www.radasm.com/
Re[3]: Скриншот с неактивного дектопа
От: sax0n Украина  
Дата: 14.07.08 02:59
Оценка:
Здравствуйте, xmen, Вы писали:

да, как-то не подумал поискать на асме. но, к сожалению, я ищу приличное на вид что-то. афункциональность можно доделать руками. внешний вид посложнее..
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.