WINAPI 自定义资源 loadResourse & FindResourse &DrawText

来源:互联网 发布:中恒软件 编辑:程序博客网 时间:2024/06/05 16:27

向程序添加自定义资源的引用.Demo加入一个.txt文件.

.txt文件网上说支持ASCII字符,我也暂且这样记,就不考虑Unicode字符;

定义资源句柄变量:HGLOBAL hResource;

加载资源变量句柄:hResource=LoadResourse(hInstance,FindResourse(hInstance,资源名字,TEXT(" 自定义资源类型")));

eg:我自定义一个TEXT资源类型,添加ID为:IDR_FILENAME:(#define IDR_FILENAME 1);这个资源ID指向filename="coolsir.txt";用的时候:

hResource=LoadResourse(hInstance,FindResourse(hInstance,MAKEINTSRING(IDRFILENAME),TEXT("TEXT"));

资源ID可以直接用文件名字:ID:“coolsir.txt”

hResource=LoadResourse(hInst,FindResourse(hInst,TEXT("coolsir.txt"),TEXT("TEXT")));貌似更直观但似乎丧失资源使用的便捷性;

定义字符指针,接收加载资源的内存块:char * pText;

pText=(char *)LoadResourse(hResource);

加载.txt这里直接用char ,为什么不用TCHAR * ,我试过了乱码,可等是我其他定义了Unicode,.txt是Ascii;

然后pText这个指针的值就是 .txt 的在内存的地址 了;

输出:

DrawTextA();

用这个函数来输出,第一次犯了个不大不小的错误.

制表符输出错误,查资料MSDN发现DrawText的style有个DT_EXPANDTABS;扩展制表符;|上就输出OK.


0 0
原创粉丝点击