首页 > 其他 > 详细

1.最简单的窗口应用程序

时间:2016-01-11 22:14:28      阅读:131      评论:0      收藏:0      [点我收藏+]

编写窗口程序的步骤:

1.定义WinMain函数

2.定义窗口处理函数(自己定义,处理消息)

3.注册窗口类(向操作系统写入数据)

4.创建窗口(在内存中创建窗口)

5.显示窗口(根据内存数据,在显示器显示出来)

6.消息循环

7.消息处理(提取、翻译、派发消息)

#include "stdafx.h"
#include "WinCreate.h"

//2.定义窗口处理函数
LRESULT CALLBACK WndProc(HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lParam)
{
  return DefWindowProc(hWnd, nMsg, wParam, lParam);
}

//1.定义WinMain函数
int APIENTRY WinMain(HINSTANCE hInstance,
                                HINSTANCE hPrevInstance,
                                LPSTR lpCmdLine,
                                int nCmdShow)
{
  //3.注册窗口类(往操作系统中写数据)
  WNDCLASS wc = { 0 };
  wc.cbClsExtra = 0;//开缓冲区
  wc.cbWndExtra = 0;//开缓冲区
  wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
  wc.hCursor = NULL;
  wc.hIcon = NULL;
  wc.hInstance = hInstance;
  wc.lpfnWndProc = (WNDPROC)WndProc;
  wc.lpszClassName = (LPCTSTR)"Main";
  wc.lpszMenuName = NULL;
  wc.style = CS_HREDRAW | CS_VREDRAW;
  RegisterClass(&wc);//将以上所有赋值全部写入操作系统

  //4.创建窗口(申请一块内存,向这个内存中扔关于窗口的数据)
  HWND hWnd = CreateWindow((LPCTSTR)"Main", (LPCTSTR)"window", WS_OVERLAPPEDWINDOW, 100, 100,
  500, 500, NULL, NULL, hInstance, NULL);

  //5.显示窗口(根据内存中的数据,在显示器中画出来)
  ShowWindow(hWnd, SW_SHOW);
  //UpdateWindow(hWnd);//刷新窗口(再画一遍)

  //6.消息循环
  MSG uMsg = { 0 };
  while ( GetMessage(&uMsg, NULL, 0, 0) )
  {

    //7.消息处理
    TranslateMessage(&uMsg);
    DispatchMessage(&uMsg);//派发给自己定义的函数
  }

  

  return 0;
}

1.最简单的窗口应用程序

原文:http://www.cnblogs.com/csqtech/p/5122539.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!