要建立一个窗口的过程
1,编写WNDCLASS结构
WNDCLASS wnd; wnd.lpszClassName="Window1"; wnd.hInstance=hInstance; wnd.cbClsExtra=0; wnd.cbWndExtra=0; wnd.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);//黑色画面 wnd.hCursor=::LoadCursor(0,IDC_ARROW); wnd.hIcon=::LoadIcon(0,IDI_APPLICATION); wnd.lpfnWndProc=WindowProc; wnd.lpszMenuName=0; wnd.style=CS_VREDRAW|CS_HREDRAW;
2.注册WNDCLASS,调用RegistorClass
if(!::RegisterClass(&wnd)){ MessageBox(0,"注册窗口出错!","error",0); return 0; }
3.创建窗口,CreateWindow
HWND hwnd=::CreateWindow(
"Window1",
"第一个游戏",
WS_OVERLAPPEDWINDOW,
100,
100,
800,
600,
0,
0,
hInstance,
0);
4.显示窗口,ShowWindow()
::ShowWindow(hwnd,SW_SHOW);
5.while循环,处理消息
MSG msg; while(::GetMessage(&msg,0,0,0)) { ::TranslateMessage(&msg); ::DispatchMessage(&msg); }
全部代码:
#include "windows.h" //回调函数,处理消息 LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UINT uMsg, // message identifier WPARAM wParam, // first message parameter LPARAM lParam // second message parameter ) { switch(uMsg) { case WM_DESTROY: ::PostQuitMessage(0); break; default: return ::DefWindowProc(hwnd,uMsg,wParam,lParam); } return 0; } int WINAPI WinMain( HINSTANCE hInstance, // handle to current instance HINSTANCE hPrevInstance, // handle to previous instance LPSTR lpCmdLine, // command line int nCmdShow // show state ) { WNDCLASS wnd; wnd.lpszClassName="Window1"; wnd.hInstance=hInstance; wnd.cbClsExtra=0; wnd.cbWndExtra=0; wnd.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH); wnd.hCursor=::LoadCursor(0,IDC_ARROW); wnd.hIcon=::LoadIcon(0,IDI_APPLICATION); wnd.lpfnWndProc=WindowProc; wnd.lpszMenuName=0; wnd.style=CS_VREDRAW|CS_HREDRAW; if(!::RegisterClass(&wnd)){ MessageBox(0,"注册窗口出错!","error",0); return 0; } HWND hwnd=::CreateWindow( "Window1", "第一个游戏", WS_OVERLAPPEDWINDOW, 100, 100, 800, 600, 0, 0, hInstance, 0); ::ShowWindow(hwnd,SW_SHOW); MSG msg; while(::GetMessage(&msg,0,0,0)) { ::TranslateMessage(&msg); ::DispatchMessage(&msg); } return 0; }
发表评论
-
游戏工作资料
2014-02-17 10:34 0c -
游戏 压力测试工具
2014-02-14 18:16 0公司让我为游戏做个 压力测试工具 ... -
java游戏 地图编辑器
2014-01-08 15:52 0无聊之余,做了个地图编辑器,根据一张地图图片,生成它的 ... -
java游戏小框架学习笔记
2014-01-08 10:45 01.AVGScript类中怎么触发 ... -
游戏编程中的寻路算法
2013-12-26 17:40 0在游戏关卡中常常会放置一些怪物(即NPC),这些怪物通常在一 ... -
UDK自定义角色(二)
2013-03-11 15:31 0对比UTFamilyInfo_Liandri_Male.u ... -
在udk中整合动画组的两种方式
2013-03-11 12:35 01.使用udk原始psk文件格式 前提,udk的坐标轴要 ... -
在udk中测试动画
2013-03-11 10:42 0在内容浏览器中选中animSet 在地图 ... -
udk开发工具
2013-01-29 11:13 0notepad++插件 UnrealScript.xml ... -
第14节 udk学习之坦克前进声音与背景音乐
2013-01-15 15:50 0在udk中建立cue资源,导入wav声音,再到代码中修改 ... -
java俄罗斯方块
2013-01-02 11:50 879做个俄罗斯方块游戏 packag ... -
udk学习之武器准心
2012-12-05 12:16 0给武器瞄准点加上准心,如图 准心资源 ... -
udk相关软件、插件下载
2012-11-26 09:32 0photoshop的dds插件:http://dl.ite ... -
第13节 UDK载具之炮弹
2012-11-16 21:54 0继承UTProjectile类 class Tan ... -
第12节 UDK学习 载具之炮筒(2)
2012-11-13 18:05 0这节学习炮塔随像机的转动而转动。 首先要取得像机的角度 ... -
第12节 UDK载具之炮筒
2012-11-11 11:41 0这节学习如何给车装上武器(已经提供了武器模型) 1.添加放 ... -
第11节 UDK学习之第三人称视角
2012-11-10 23:33 0这节做一个第三人称视角,鼠标左右前后移动与第一人称无差别,通 ... -
第10节 udk学习之自定义载具(2)
2012-11-10 21:23 01.骨骼风格物体与动画 ... -
第九节 UDK学习之自定义角色之 (三)
2012-10-17 16:30 0高手都盾世了吗,udk社区太不厚道了,看篇文章要钱,下个资源要 ... -
第八节 udk学习之自定义角色 二
2012-10-14 18:49 0首先墨迹一下: 要 ...
相关推荐
【VC创建一个最简单的Win32程序】 在深入讲解如何创建一个Win32程序之前,首先需要理解Win32编程的基本概念。Win32 API(应用程序接口)是Microsoft Windows操作系统提供的一系列函数和数据结构,用于开发Windows...
本文将深入探讨“最简单Win32程序”的核心概念,帮助初学者理解Win32 API的基础及其在Direct3D 11学习中的作用。 Win32 API(应用程序接口)是微软为Windows操作系统提供的编程接口,它允许开发者创建原生的Windows...
Win32最基础应用程序是指基于Microsoft Windows操作系统的32位应用程序开发。Win32 API(应用程序接口)是Windows操作系统提供给开发者的一个接口,允许程序员直接与操作系统交互,创建各种功能丰富的桌面应用程序。...
"win32应用台程序简单计算器"是一个使用Win32 API编写的计算器程序,它为初学者提供了学习Win32编程基础的良好实例。 在Win32编程中,我们通常会用到以下关键概念: 1. **窗口类(Window Class)**:窗口类定义了...
在本文中,我们将深入探讨如何使用Microsoft Foundation Class (MFC) 库来开发一个简单的Win32控制台程序,特别是涉及到“纸牌”游戏的概念。MFC是微软为Windows应用程序开发提供的一套C++类库,它封装了Windows API...
Sample code for < Win32ASM Programming 2nd Edition> ; by 罗云彬, http://asm.yeah.net ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ; Test.asm ; 编程环境测试代码 ;>>>>>>>>>>>>>...
在MFC(Microsoft Foundation Classes)库中,创建托盘程序相对简单,但本项目选择使用Win32 API,可能是因为开发者更喜欢API的直接性和灵活性,或者想避免MFC带来的额外依赖。 在使用Win32 API编写托盘程序时,...
"最精简的 Win32 程序"这个标题可能是指一个包含了基础Win32编程元素的简单示例项目。 在"visual c++最精简的SDK程序.rar"描述中,我们推测这是一个利用Visual C++编译环境,结合Win32 SDK创建的最小化示例。Visual...
【标题】: "用C语言做Win32程序设计" 【描述】: "用C语言设计Win32程序界面,创建美观的QQ登录界面案例" 【标签】: "WINDOWS编程" 在Windows编程中,C语言可以用来创建底层的Win32应用程序,包括图形用户界面(GUI...
《Win32多线程程序设计完全手册》是一本深入探讨Windows操作系统环境下多线程编程技术的专业书籍。在计算机科学中,多线程是并行处理的一种方式,它允许一个应用程序同时执行多个任务,从而提高了系统的效率和响应...
本教程将围绕“给VC++初学者的最简单Win32窗口模板”展开,帮助你理解如何利用Visual C++来构建一个基本的Win32窗口。 首先,我们需要了解Win32窗口的基本结构。每个Win32窗口都基于一个窗口类(Window Class),...
在VC++环境中,利用Win32 API(应用程序接口)创建一个自动画图程序是一项基础而重要的任务。Win32 API提供了丰富的图形绘制功能,使得开发者能够构建出具有复杂图形界面的应用程序。本教程将深入探讨如何在Win32...
在Windows操作系统中,Win32 API(应用程序接口)是开发者编写本地系统级应用程序的主要工具。本文将深入探讨如何在Win32程序中使用console窗口,以便在开发过程中方便地查看和记录调试信息。 首先,创建一个Win32...
这个“Win32下的时钟程序实例源码”提供了一个在Win32环境下编写简单时钟程序的示例,帮助开发者理解和实践如何在非MFC(Microsoft Foundation Classes)环境中创建实时显示时间的应用。 MFC是微软提供的一个C++库...
本文旨在详细介绍如何使用Microsoft Visual C++ 6.0(简称VC6)创建一个简单的Win32 SDK应用程序。通过本教程,您将了解如何创建一个新的工程,并在其中编写主函数来实现基本的应用程序框架。 ### 二、创建空的Win...
### 用C语言设计Win32程序:关键知识点解析 #### 一、概述 本文将根据给定的信息,深入解析《用C语言设计Win32程序》这本书的主要内容及其涉及的关键知识点。本书聚焦于实际应用,旨在通过具体的编程实例帮助读者...
在本篇文章中,我们将深入探讨如何使用Win32 SDK开发一个简单的单窗口应用程序。这个过程不仅有助于理解Win32程序设计的基本概念和步骤,还能帮助读者掌握直接使用Win32 API进行编程的基础知识。 #### 二、从VC6到...
这将帮助初学者快速上手,理解如何使用Win32ASM编写、编译和运行简单的汇编程序。 总的来说,汇编语言和Win32ASM的结合为开发者提供了一个深入理解Windows系统工作方式的途径,并且能够创建高效、针对性强的程序。...
通过本章的学习,你应该已经掌握了如何使用C语言编写简单的Win32窗口程序。接下来的章节将会更加深入地探讨文件操作、网络编程和数据库访问等内容,这些都是现代软件开发中不可或缺的部分。继续探索,你会发现自己在...
本教程将深入探讨如何使用Win32 API来创建一个简单的时钟程序,这非常适合Win32初学者进行学习。 首先,让我们了解Win32 API的基本概念。它是一组函数、常量、消息和结构,它们允许程序员访问操作系统的核心服务,...