Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

WinAPI: как создать кнопки??

4.2K
05 декабря 2003 года
mmr
11 / / 30.11.2003
Проблема: неизвестно как создать в окне кнопки с использованием API функций. Есть некая функция InitCommonControlsEx(Type), которая грузит из DLL'ки разные контролы, но с ней нужно использовать функцию CreateWindowEx, которой, судя по примеру, вторым параметром нужно передавать некую строку. Для контрола UpDown эта строка выглядит так: "msctls_updown32", а как для других???
4.2K
05 декабря 2003 года
mmr
11 / / 30.11.2003
Все необходимое обнаружил в заголовочном файле commctls.h. Теперь нужно только узнать как писать функции-обработчики для этих элементов??...
401
08 декабря 2003 года
Br@in RIPper
289 / / 15.02.2003
Цитата:
Originally posted by mmr
Все необходимое обнаружил в заголовочном файле commctls.h. Теперь нужно только узнать как писать функции-обработчики для этих элементов??...



контролы посылают родительскому окну notification messages. Каждый контрол - сообщения разного типа, так что смотри в MSDN

3.9K
09 декабря 2003 года
Easy Coder
12 / / 07.12.2003
MSDN у меня нет, но, как я понял, если для EditBox'а существует такое notofication message как EN_CHANGE (найдено в winuser.h), то в функцию обработки сообщений главного окна нужно писать:

switch(message)
{ .
.
case EN_CHANGE:
наш код
break;
.
.
}

Так или нет? Если так, то сразу говорю, что пробовал... не работает. :{
401
09 декабря 2003 года
Br@in RIPper
289 / / 15.02.2003
Цитата:
Originally posted by Easy Coder
MSDN у меня нет, но, как я понял, если для EditBox'а существует такое notofication message как EN_CHANGE (найдено в winuser.h), то в функцию обработки сообщений главного окна нужно писать:

switch(message)
{ .
.
case EN_CHANGE:
наш код
break;
.
.
}

Так или нет? Если так, то сразу говорю, что пробовал... не работает. :{



конкретно EditBox работает через WM_COMMAND:

 
Код:
case WM_COMMAND:
  switch(wParam){
    case MAKELONG(EDIT_ID, EN_CHANGE):
      ...
    break;
  }
break;

в lParam лежит HWND контрола

И лично от меня: хочешь писать на WinAPI - раздобудь MSDN
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог