WINAPI 自定义资源 loadResourse & FindResourse &DrawText

本文介绍了如何将自定义资源,如ASCII文本文件,添加到Windows应用程序中,并演示了使用API函数LoadResource和FindResource来加载和查找这些资源的方法。

向程序添加自定义资源的引用.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.


c winapi是一种使用c语言编写的应用程序编程接口,它提供了许多功能丰富的函数和工具,用于创建windows平台上的窗口应用程序。自定义控件是在c winapi中创建新的控件类型的过程。下面是一些关于如何在c winapi中创建自定义控件的基本步骤: 首先,我们需要定义一个新的控件类型。可以使用结构体来表示新控件的属性和状态。这个结构体可以包含控件的位置、大小、样式和其他自定义属性。 然后,我们需要在主窗口的消息处理函数中添加处理自定义控件消息的代码。可以使用switch语句来检查每个消息的类型,并采取相应的操作。 接下来,我们需要创建自定义控件的窗口。可以使用CreateWindowEx函数来创建一个窗口,并指定新控件的类名、样式和其他属性。然后,使用ShowWindow函数将控件窗口显示在屏幕上。 在控件窗口的消息处理函数中,需要添加处理控件消息的代码。这些消息可以是鼠标点击、键盘输入或其他用户事件。可以使用相应的函数来处理这些消息,例如处理鼠标点击消息可以使用GetCursorPos函数来获取鼠标位置。 最后,我们需要在主窗口的代码中使用新的自定义控件。可以通过调用CreateWindowEx函数创建一个新的控件窗口,并使用SendMessage函数发送消息到控件窗口,以更新控件的状态和属性。 总之,使用c winapi可以轻松地创建自定义控件。通过定义新的控件类型、处理控件消息和在主窗口中使用新的控件,我们可以实现功能丰富的自定义控件。这些控件可以用于创建各种类型的程序,提供更好的用户体验和交互性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值