zoukankan      html  css  js  c++  java
  • Direct3D 12 创建windows窗口

    之前列出了计算机图形学的计划,现在开始这一阶段的学习,首先是Windows窗口的创建。

    创建windows窗口

      环境: 1. Visual Studio 2015

    新建项目

    创建工程项目完成,确定为窗口:

    添加MainWindowDemo.cpp文件

    /*
    实现窗口创建的六步骤:
    第一步:创建入口函数WinMain
    第二步:注册窗口类
    第三部:实现回调函数的功能
    第四步:显示窗口
    第五步:更新窗口
    第六步:消息循环
    */
    
    #include "windows.h"
    
    //回调函数
    LRESULT CALLBACK WinProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
    {
        switch (uMsg)
        {
        case WM_CREATE:
        {
            MessageBox(NULL, L"即将创建一个窗口!", L"Infor", MB_OK);
        }
        break;
        case WM_DESTROY:
        {
            PostQuitMessage(0);
        }
        break;
        }
        return DefWindowProc(hWnd, uMsg, wParam, lParam);
    }
    
    //创建入口函数
    int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int ShowCmd)
    {
        HWND hWnd = 0;
    
        MSG nMsg = { 0 };
    
        //注册窗口类
        WNDCLASS cs = { 0 };
        cs.cbClsExtra = 0;
        cs.cbWndExtra = 0;
        cs.hbrBackground = (HBRUSH)(COLOR_WINDOW + 2);
        cs.hCursor = NULL;
        cs.hIcon = NULL;
        cs.hInstance = hInstance;
        cs.lpfnWndProc = (WNDPROC)WinProc;
        cs.lpszClassName = L"Main";
        cs.lpszMenuName = NULL;
        cs.style = CS_VREDRAW | CS_HREDRAW;
    
        RegisterClass(&cs);//实现注册窗口
    
        //创建窗口
        hWnd = CreateWindow(L"Main", L"Windows", WS_OVERLAPPEDWINDOW, 200, 200, 500, 500, NULL, NULL, hInstance, NULL);
        //显示窗口
        ShowWindow(hWnd, SW_SHOW);
        //更新窗口
        UpdateWindow(hWnd);
        //消息循环
        while (GetMessage(&nMsg, 0, NULL, NULL))
        {
            TranslateMessage(&nMsg);
            DispatchMessage(&nMsg);
        }
        return 0;
    }

    代码引用:https://www.cnblogs.com/xiaoweiwangwang/p/4079494.html

  • 相关阅读:
    CAP理论中的P到底是个什么意思?
    网络分区是什么
    SQL中的where条件,在数据库中提取与应用浅析
    golang 数据库开发神器 sqlx使用指南
    2017-07-08( bzip2 bunzip mount)
    2017-07-07(zip unzip gzip gunzip)
    2017-07-06(grep man apropos )
    2017-07-05 (whereis which find)
    001
    009-变量测试
  • 原文地址:https://www.cnblogs.com/jqm304775992/p/7867495.html
Copyright © 2011-2022 走看看