WEB开发网
开发学院软件开发VC VC初学者入门系列之一:窗口类的诞生 阅读

VC初学者入门系列之一:窗口类的诞生

 2006-07-20 11:38:32 来源:WEB开发网   
核心提示: 二、传统SDK中的窗口类既然我们知道了什么是窗口类,那我们就将它放到一个传统的SDK程序中,VC初学者入门系列之一:窗口类的诞生(2),看看是怎样运行的,#include <windows.h>LRESULT CALLBACK WndProc (HWND, UINT, WPAR

二、传统SDK中的窗口类

既然我们知道了什么是窗口类,那我们就将它放到一个传统的SDK程序中,看看是怎样运行的。

#include <windows.h>
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
          PSTR szCmdLine, int iCmdShow)
{
  static TCHAR szAppName[] = TEXT ("HelloWin") ;
  WNDCLAS  wndclass ;
  wndclass.style   = CS_HREDRAW | CS_VREDRAW ;
  wndclass.lpfnWndProc = WndProc ;
  wndclass.cbClsExtra    = 0 ;
  wndclass.cbWndExtra = 0 ;
  wndclass.hInstance    = hInstance ;
  wndclass.hIcon   = LoadIcon (NULL, IDI_APPLICATION) ;
   wndclass.hCursor   = LoadCursor (NULL, IDC_ARROW) ;
  wndclass.hbrBackground  = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
   wndclass.lpszMenuNam  = NULL ;
  wndclass.lpszClassName  = szAppName ;
  RegisterClass (&wndclass);
  hwnd = CreateWindow( szAppName,  // window class name
      TEXT ("The Hello Program"),  // window caption
      WS_OVERLAPPEDWINDOW,  // window style
      CW_USEDEFAULT,  // initial x position
      CW_USEDEFAULT,  // initial y position
      CW_USEDEFAULT,  // initial x size
      CW_USEDEFAULT,  // initial y size
      NULL,      // parent window handle
      NULL,      // window menu handle
      hInstance,    // program instance handle
      NULL) ;     // creation parameters
  
  ShowWindow (hwnd, iCmdShow) ;
  UpdateWindow (hwnd) ;
  
  while (GetMessage (&msg, NULL, 0, 0))
   {
    TranslateMessage (&msg) ;
     DispatchMessage (&msg) ;
    }
  return msg.wParam ;
}

这是一个标准的Windows程序代码,程序被启动后,填写一个窗口类,然后调用RegisterClass将该类注册,接着创建该窗口,最后显示窗口和进入消息循环。

上一页  1 2 3 4 5  下一页

Tags:VC 初学者 入门

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接