• win32概述


    win32基于已有的框架 有意入口函数只有一个

    都需要有一个主函数 所有程序的入口都是maincrtstartup

    tydedef 顾名思义

    window是基于c,c++ 又想有自己所特有的数据类型 所以在C,C++的类型基础上做了重定义
    1.区别c语言没有顾名思义
    2.封装信息

    特性 :
    1.如果没有讲过 先转定义看类型
    2.大写H开头 在win32里面讲句柄
    3.LP,P开头在win32里面表示指针
    4.windows里面数据类型全都是大写 但同时windows是基于C,C++的数据类型

    程序中两种字符集的表现 多字节和宽字节 以及通配字符集

    window没有音乐播放 只是安装了一个默认的音乐播放器

    学会运用windows编程 编写播放音乐

    以上代码如下实现

     1 //逻辑部分 显式部分
     2 #include<Windows.h>
     3 #pragma comment(lib,"Winmm.lib")//库文件 动态库或静态库
     4 //windows的入口函数 WinMain
     5 int WinMain(_In_ HINSTANCE hInstance,//应用程序使用句柄
     6     _In_opt_ HINSTANCE hPrevInstance,//父应用程序实例句柄(现版本为null)
     7     _In_ LPSTR lpCmdLine,//命令行参数
     8     _In_ int nShowCmd)//窗口显示方式
     9 {
    10     MessageBoxA(nullptr,//窗口句柄
    11         "abc",//消息盒子文本内容
    12         "123",//消息盒子标题
    13         MB_YESNOCANCEL|MB_ICONWARNING//消息盒子的类型        
    14         );
    15     //windows是基于c语言c++的又想有自己的数据类型 所以在c/c++基础上做了冲定义
    16     //多字节
    17     char c = 'a';
    18     char *pc = "abc";//多字节字符串
    19         //pc = &c;
    20         int m = strlen(pc);//多字节求长度
    21         //宽字节
    22         wchar_t wc = 'a';//宽字节字符
    23     wchar_t *pwc = L"ABCD";//宽字节字符串
    24     m = wcslen(pwc);//宽字节求长度
    25     //通配字符集表现
    26     TCHAR tc = 'a';//可以根据自己的需求改变字节类型
    27     TCHAR *ptc = _T("abc");//_T()带参宏
    28     _tcslen(ptc);
    29     //1.可以不管项目中使用的字符集 可以自行设定固定的类型去表现字符或者字符串,char或wchar_t
    30     //2.可以统一使用字符的通配类型
    31     //wav音乐播放
    32     PlaySound(_T(""),//文件路径名,相对路径
    33         nullptr,//应用程序实列句柄
    34         SND_LOOP | SND_FILENAME | SND_ASYNC//文件操作模式
    35         //SND_LOOP 循环 SND_FILENAME 指定文件 SND_ASYNC 异步
    36         );
    37     //mp3音乐播放
    38     mciSendString(_T("....mp3 alias abc"),//打开一个*.mp3的文件 alias取别名叫abc
    39         nullptr,//接受信息的缓存区,null表示不接受信息
    40         0,//第二个参数的内存大小
    41         nullptr);//回调函数的窗口句柄
    42     mciSendString(_T("play abc"), 0, 0, 0);
    43     MessageBox(0, 0, 0, 0);//类似于getchar()因为windows编程里不能用
    44 
    45     return 0;
    46 }
  • 相关阅读:
    团队作业—第二阶段08
    团队作业—第二阶段07
    java--Map使用实现模拟斗地主洗牌发牌
    课程作业08 MVC框架具体使用
    课程作业 MVC框架
    课堂作业06_23种设计模式
    课堂作业05 《6种质量属性战术》
    课堂作业04
    课堂作业03
    架构漫谈阅读笔记
  • 原文地址:https://www.cnblogs.com/liugangjiayou/p/11403440.html
Copyright © 2020-2023  润新知