资源ID一般会和RC 脚本关联在一起使用, 具体作用会和不同的资源类型不同,有所不同。 比如是位图对象的资源ID,那么你可以通过该ID获取到位图的实际数据或相应的流信息。 如果是菜单对象,那么其ID对应的就是,菜单相关的内容,可以通过该ID来加载菜单,同时调用方相应的WM_COMMAND消息值也与该ID进行匹配。 等等
至于字符串资源ID的作用很简单, 就是利用一个数字指向资源中的一个实际字符串。 其应用最多的情况可能就是多语言的项目中, 可以为不同的语言定义不同的字串,既不需要修改代码,直接替换资源就能实现多语种应用的实现。
如果你的工程中已经有资源ID头文件和资源文件,就只能手动添加了:
1.选你的资源文件,一般为
xxx.rc,鼠标点击右键,选“打开方式...”->对话框中选“源代码(文本)编辑器
2.将资源描述文件拷入其中,保存。
3.打开
resources.h文件,将资源ID文件拷入其中
就行了,注意ID标识不要冲突,ID数字也不能冲突,如有冲突手动修改即可http://zhidao.baidu.com/question/36799154.html?fr=qrl3
第一步:定义消息。#define WM_MY_MESSAGE (WM_USER+100)
第二步:实现消息处理函数。该函数使用WPRAM和LPARAM参数并返回LPESULT
LRESULT C Dlg::OnMyMsg(WPARAM wParam, LPARAM lParam)
{
return 0
}
第三步:在类头文件的AFX_MSG块中说明消息处理函数。
virtual BOOL OnInitDialog()
afx_msg void OnSysCommand(UINT nID, LPARAM lParam)
afx_msg void OnPaint()
afx_msg HCURSOR OnQueryDragIcon()
afx_msg LRESULT OnMyMsg(WPARAM, LPARAM) //复制这里
DECLARE_MESSAGE_MAP()
第四步:在用户类的消息块中,使用ON_MESSAGE宏指令将消息映射到消息处理函数中。
BEGIN_MESSAGE_MAP(C自动填表Dlg, CDialog)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_MESSAGE(WM_MY_MESSAGE, OnMyMsg)//复制这里
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)