一个Windows应用程序主窗口的创建主要需要以下过程:

  • 使用WNDCLASS结构变量定制符合程序需要的窗口——①窗口的创建
  • 将定制的窗口向系统注册——②窗口类的注册
  • 以窗口类注册名为参数,调用创建窗口的API函数在内存中创建窗口——③窗口的创建
  • 调用API函数将窗口显示到显示器屏幕上——④窗口的显示

①窗口的创建

WNDCLASS wc;

wc.style=0;
wc.lpfnWndProc=WndProc;
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hInstance=hInstance;
wc.hicon=LoadIcon(NULL,IDI_APPLIcATION);
wc.hCursort=LoadCUrsor(NULL,IDC_ARROW);
wc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
wc.lpszMenuName=NULL;
wc.lpszClasName="MyAppWnd";

②窗口类的注册

BOOL RegisterClass(WNDCLASS &WC)

③窗口的创建

程序使用API函数CreatWindow()来创建窗口

HWND CreateWindow
{
    LPCTSTR lpClassName,
    LPCTSTR lpWindowName,
    DWORD  dwStyle,
    int         x,
    int          y,
    int         nWidth,
    int         nHeight,
    HWND    hWndParent,
    HMENU    hMenu,
    HANDLE   hInstancel
    LPVOID    lpParam
};
HWND hwnd;

hwnd=CreateWindow("MyAppWnd"
                             "Windows"
                              WS_OVERLAPPEDWINDOW,
                              120,50,800,600,    
                              NULL,
                              NULL,
                              hInstance,
                              NULL
);                             
创建窗口示例代码

一个窗口的创建过程就是一个程序的安装过程。

④窗口的显示

通过调用两个API函数将存储在内存中的窗口显示在计算机显示屏幕上。

BOOL ShowWiindow
(
    HWND hwnd,
    int nCmdShow  
);
BOOL UpdateWindow
(
    HWND hwnd
);
posted on 2017-08-02 10:52  HANCAO  阅读(251)  评论(0编辑  收藏  举报