Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Win API


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / WinAPI

Выпуск № 285
от 03.08.2006, 20:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 343, Экспертов: 26
В номере:Вопросов: 1, Ответов: 1


Вопрос № 50541: Добрый вечер, уважаемые эксперты! Меня очень интересует вопрос создания своего собственного control'a (типа Button) с нуля. То есть создание его логики и графической части. В целом интересен данный вопрос. В Интернете не смог найти ни одной стать...

Вопрос № 50.541
Добрый вечер, уважаемые эксперты!
Меня очень интересует вопрос создания своего собственного control'a (типа Button) с нуля. То есть создание его логики и графической части. В целом интересен данный вопрос. В Интернете не смог найти ни одной статьи на данную тему полностью раскрывающюю создание контрола с нуля.
Помогли найти информацию в MSDN. Ее прочитал, но там нет цельного примера. Поэтому и обращаюсь к Вам.
Если Вам несложно, то не могли бы подсказать: 1) Что еще почитать на данную тему? 2) И очень хорошо бы было увидеть пример простого контрола (в котором были бы несколько событий типа OnClick() и OnMouseHover()).

С уважением, Михаил.
Отправлен: 29.07.2006, 20:25
Вопрос задал: Коллеганов Михаил Михайлович / ShumiArrow (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Пёс
Здравствуйте, Коллеганов Михаил Михайлович / ShumiArrow!
вот простейший пример создания кнопки с рисунком на ней, в примере предпологается, что у тебя уже создано родительское окно, hwnd которого в примере wndMain, есть переменная icon : HICON; 80; константа const Btn0=101;(только для удобства)

//создаем саму кнопку
btnwnd:=CreateWindowEx(WS_EX_STATICEDGE,'button',nil,BS_ICON or WS_VISIBLE or WS_CHILD,10,10,40,40,wndMain,Btn0,hInstance,nil);
//получаем описатель одной из стандартных пиктограмм
Icon:=LoadIcon(0,IDI_APPLICATION);
//вставляем пиктограмму в кнопку
sendMessage(btnwnd,bm_setimage,2,icon);

в приложении смотри функцию обработки сообщений, впринципе все ясно.
добавлю только для разьяснения, что идентефикатор нажатой кнопки передается в младшей части wparam'а (loWord(wParam))

Приложение:

---------
Пока бежал, он умудрился прописать дырочку в снегу...

Ответ отправил: Пёс (статус: 2-ой класс)
Ответ отправлен: 30.07.2006, 09:42
Оценка за ответ: 3


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.35 от 27.07.2006
Яндекс Rambler's Top100

В избранное