当前位置: 首页 > news >正文

传媒公司 网站开发腾讯云服务器官网

传媒公司 网站开发,腾讯云服务器官网,西安网站的设计说明,青岛注册公司在哪个网站申请win32应用程序的第一章 1最简单的win32窗口的创建 这里呢我把win32窗口的创建作为第一个知识分享给大家,也算我对他的一个巩固了。嘿嘿 这里我要说明的是创建这个窗口有两种方法(当然是对于萌新来说),第一就是我们学过的用函数来…

win32应用程序的第一章

1最简单的win32窗口的创建
这里呢我把win32窗口的创建作为第一个知识分享给大家,也算我对他的一个巩固了。嘿嘿
这里我要说明的是创建这个窗口有两种方法(当然是对于萌新来说),第一就是我们学过的用函数来实现(定义,声明,调用),第二种就是直接在主函数里按顺序一一列出来,我这里就采用第一种吧,正好也对目前大家函数的学习一个实例吧。
第一节就是把详细的代码(超全注释)分享给大家,加上创建的步骤。

#include<Windows.h>         //必备的一个头文件
#include<mmsystem.h>   //多媒体头文件,播放音乐用的
#pragma comment (lib,"winmm.lib")   //播放的库文件
#define windowWidth   800     //定义这个窗口的宽
#define windowHeight  600         //高
TCHAR szWindowClass[100] = TEXT("我的第一个多功能窗口");           //定义一个TCHAR型数组存放字符
ATOM MyRegisterClass(HINSTANCE hInstance);                     //窗口设计的函数声明
BOOL initInstance(HINSTANCE, int);                             //初始化函数的声明  也就是窗口的创建
LRESULT CALLBACK Wndproc(HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam);              //窗口过程处理函数 声明前置
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPreIntance, LPSTR szCmdLine, int nCmdShow)             //WIN32窗口入口函数
{MSG msg;   //定义一个消息if (!MyRegisterClass(hInstance))   //如果失败
{
MessageBox(NULL, TEXT("创建失败"), szWindowClass, MB_ICONERROR);     //就显示一个"创建失败"的对话框
return 0; //退出程序
}
initInstance(hInstance, nCmdShow);    //调用while (GetMessage(&msg, NULL, 0, 0))     {TranslateMessage(&msg);        //翻译DispatchMessage(&msg);            //派送}return msg.wParam;
}ATOM MyRegisterClass(HINSTANCE hInstance)            
{WNDCLASSEX ww;                //这是一个窗口的类  具体的可以百度一下ww.cbClsExtra = 0;                                        //0ww.cbSize = sizeof(WNDCLASSEX);                                  //取大小ww.cbWndExtra = 0;                                         //附加信息 都设置0ww.hbrBackground = (HBRUSH)GetStockObject(GRAY_BRUSH);    //背景画刷   我设成灰的吧ww.hInstance = hInstance;                             //当前实例句柄ww.style = CS_HREDRAW | CS_VREDRAW;                //窗口格式水平,垂直拉动ww.lpszClassName = szWindowClass;                //窗口类名ww.hCursor = LoadCursor(NULL, IDC_ARROW);        //光标ww.hIcon = NULL;                        //图标ww.lpszMenuName = NULL;            //菜单名ww.lpfnWndProc = Wndproc;         //消息处理函数 ww.hIconSm = NULL;               //小图标//    登记窗口Treturn RegisterClassEx(&ww);
}BOOL initInstance(HINSTANCE hInstance, int nCmdShow)                  //窗口的创建
{
HWND hwnd;
//窗口的创建       窗口类名          标题名                    显示方式               默认的起始位置                    宽      高              照写       句柄
hwnd = CreateWindow(szWindowClass, TEXT("我的第一个多功能窗口"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, windowWidth, windowHeight, NULL, NULL, hInstance, NULL);
//     显示,  更新窗口ShowWindow(hwnd, nCmdShow); UpdateWindow(hwnd);// 播放   音乐  mciSendString(L"open ./res/mhtc.mp3 alias music", 0, 0, 0);       //alias意思是取一个小名mciSendString(L"play music repeat", 0, 0, 0);        //repeat是循环播放return TRUE;
}LRESULT CALLBACK Wndproc(HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam)              //窗口过程处理函数 声明前置
{
switch (message) //对信息进行判断{case WM_DESTROY:    //窗口摧毁PostQuitMessage(0);    //发送退出break;}return DefWindowProc(hWnd, message, wparam, lparam);
}

终于打完了 这就是一个WIN32窗口的最基础模型,不论2D游戏还有3D游戏或者其他什么windows应用,都是基于这个小小的WIN32窗口,我在这里完全注释了每行都标明了。我是用函数来实现的这个窗口,起始分为7大步骤记忆我给罗列出来:
1.设计窗口
2.注册窗口
3.创建窗口
4.显示窗口
5.更新窗口
6.消息循环
7.消息处理函数
嗯就这七个步骤!!!!!
我在这里说明一下那个winmain入口函数其实它就等同于我们平时刷题时的int main 主函数,暂时可以理解为在win32窗口里换个名字。
我在里面添加了一段音乐就不枯燥了哈哈。
下面我把运行的截图给大家展示一下:
在这里插入图片描述
好啦,其实室友背景音乐的,哈哈,这里大家就听不到了,你们可以自己在网上下载一个mp3格式的音乐,在这里
mciSendString(L"open ./res/mhtc.mp3 alias music", 0, 0, 0);进行修改,好吧我先把这个函数给大家稍微讲解一下,播放多媒体文件的一个函数,它支持的文件格式MPEG,AVI,WAV,MP3,MID, 接下来对它的参数第一个 L"open ./res/mhtc.mp3 alias music",意思是打开项目里的res文件里的mhtc歌曲,我把歌名改为mhtc啦()就是梦回唐朝,格式是mp3, alias意思是给这个歌名取个别名 叫 music,后面的三个零建议目前照抄。
给大家看一下项目目录吧:(res是我们自己创建的文件夹用来存放项目需要的资源)
接下来看下resli里是啥在这里插入图片描述在这里插入图片描述
嘿嘿看到了吧就是这个歌曲,我觉得蛮好听的!!
大家肯定对这个win32窗口还存在了很多疑问,不要问我怎么知道的(因为我当初也是),首先依葫芦画瓢,自己创建一个win32窗口一步一步模仿写出来,一句一句的解读它的意义,不会的地方百度呀,()如果觉得百度有些地方讲的不过通俗易懂,可以私信我,我觉得用最逗逼却印象深刻的方法让你理解透彻。

当然有人会这样想,我现在还没学到这些,看这个有啥用呢?好吧我以亲身经历告诉你,学习它有助于你对前面基础知识更好的理解,并且能融合在一起运用,就能初步地实现一个知识框架体系。举个例子,上海比作一个项目,通往上海的道路有很多,每一个道路的每一个岔路口都是一个小的知识,而这个win32窗口就是所有道路中随便一条能通往上海的,就沿着这条路,(当然不是最优路法),但们通过这条路,就能知道其他的路和这条路方向都是一样的大概的路程也差不多。总体上有一个了解。这样对于我们今后的学习能产生一个深远的知识框架。当然这个肯定要私自下功夫,但是不下功夫又何谈收获呢。所以加油吧萌新们。
好了,这节就到这里,希望大家可以多练习,当然我写的这个代码肯定不是最优的,但是万变不离其宗,我们掌握的是思路。多敲代码吧。下节见。(学习中)

http://www.yayakq.cn/news/912541/

相关文章:

  • 四核网站建设快件网站建设
  • 简述网站建设的网页浏览器加速器
  • 前程无忧怎么做网站如何使用wordpress html代码
  • 长春站最新通知注册网站代码
  • 做团购的网站有哪些最近时政热点新闻
  • 武昌做网站哪家好网页策划案
  • 网站做qq微信微博登录win主机 wordpress
  • 建站助手简网app工场官网是不是不可以用了
  • 周口seo 网站大学生做社交网站
  • 建设银行网站下载中心在哪网络规划设计师备考
  • phpcms做汽车网站最便宜的外贸自建站平台
  • 加强政务门户网站建设配件查询网站制作
  • 阿里云主机 多个网站商务类网站设计
  • 怎么是一个网站看起来高大上陕西采购与招标网官方
  • 淘宝客可以做返利网站吗网站建设工作是干什么的
  • 开发和发布网站的主要流程网站开发课程设计体会
  • html做的网站优化什么建立生育支持
  • 云服务器搭建个人网站网站注册备案之后怎么做网站
  • 一级a做爰片免费观看 安全网站基层建设论文查询官方网站
  • 开做网站的公司 条件河南省工程项目信息公示栏
  • 网站建设邀请函重庆网站优化公司
  • 做一样的模板网站会被告侵权吗西安黄页网
  • 网站 刷流量 SEO建设项目竣工验收公告网站
  • 网络营销的效果表现在哪几个方面网站百度排名优化
  • 网站建设流程策划静态网页软件
  • 合肥建设官方网站网站兼容设置
  • 做网站怎么接私活做跨境电商有没推荐的网站
  • 公司商城网站开发费做什么科目做相册哪个网站好用
  • 专做运动品牌的网站flash网页制作实例
  • 手机网站什么技术开发wordpress未找到页面