Как нажать кнопку на API?
От: jeon  
Дата: 22.10.05 12:43
Оценка:
Привет. Хочу просто сделать форму с кнопкой и чтобы при нажатии на кнопку что-нить делалось (все равно что) на чистом API. Форму я сделал и могу обрабатывать сообщения которые в неё поступают, у меня при нажатии на кнопку левой или правой кнопкой меняется текст окна и если открыт «Блокнот», то меняется и текст его заголовка окна. Добавил и кнопку на форму, но вот как обрабатывать сообщения для кнопки я не догоню!!! Собственно вот и вопрос – как сделать обработчик для кнопки. Вот код, который у меня получился:

#include <windоws.h> 

LONG WINAPI WndProc(HWND,UINT,WPARAM,LPARAM); 

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd) 
{ 
  HWND hwnd,bhwnd; 
  MSG msg; 
  WNDCLASS w; 
  memset(&w,0,sizeof(WNDCLASS)); 
  w.style=NULL; 
  w.lpfnWndProc=WndProc; 
  w.hInstance=hInstance; 
  w.hbrbаскgrоund=(HBRUSH)COLOR_windоw; 
  w.lpszClassName="First"; 
  w.hCursor=LoadCursor(NULL, IDC_ARROW); 
  RegisterClass(&w); 
  hwnd=Createwindоw("First","fucking windоw",WS_OVERLAPPEDwindоw,1,1,500,400,NULL,NULL,hInstance,NULL); 
  bhwnd=Createwindоw("BUTTON","OK",WS_VISIBLE | WS_CHILD | BS_DEFPUSHBUTTON,10,10,100,100,hwnd,NULL,NULL,NULL); 
  Showwindоw(hwnd,nShowCmd); 
  Updatewindоw(hwnd); 
  while(GetMessage(&msg,NULL,0,0)) 
  { 
    TranslateMessage(&msg); 
    DispatchMessage(&msg); 
  } 
  return msg.wParam; 
} 


LONG WINAPI WndProc(HWND hwnd,UINT Message,WPARAM wparam,LPARAM lparam) 
{ 
  switch(Message) 
  { 
  case WM_DESTROY: 
    PostQuitMessage(0); 
    break; 
  case WM_LBUTTONDOWN: 
    SetwindоwText(hwnd,"not fucking windоw"); 
    break; 
  case WM_RBUTTONDOWN: 
    HWND hnd; 
    hnd=Findwindоw(NULL,"Áåçûìÿííûé - Áëîêíîò"); 
    SetwindоwText(hnd,"jeon's soft - notepad"); 
    SetwindоwText(hwnd,"its so scary in a world with peoples who are idiots"); 
    break; 
  default: 
    return DefwindоwProc(hwnd,Message,wparam,lparam); 
  } 
  return 0; 
}

22.10.05 17:03: Перенесено модератором из 'C/C++' — Odi$$ey
Код отформатирован и заключён в тэги [c]/[/c] — Кодт
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.