VS 2005中VC.NET遇到的几个问题
2006-07-25 01:06
330 查看
MessageBox("asdf");
出错信息:
error C2664: “CWnd::MessageBoxW”: 不能将参数1 从“const char [3]”转换为“LPCTSTR”
原因:2005默认的"使用 Unicode 字符集",解决:在你建立的解决方案的工程文件的属性看到选"配置属性"的"字符集"请选择"使用多字节字符集"就可以了。
你用2005打开2003的文件时候不会出现的这样的错误,是因为编译环境在转换过程中进行了转换.
在修改的时候还遇到一个问题,就事GetWindowTextA和GetWindowTextW的问题,如果使用的是Unicode字符集,那么GetWindowTextW,如果是多字节字符集,就用GetWindowTextA。具体如何还请高手指明。
不过使用GetWindowText都不会出错,它应该是个宏吧?不对不要笑话啊。
关于几个函数:
CWnd::GetDlgItem
MSDN解释:
Retrieves a pointer to the specified control or child window in a dialog box or other window.
返回一个指向Dialog窗体或其他窗口的指定控件或子窗体的指针。
CWnd::GetWindowText
http://msdn2.microsoft.com/en-us/library/db50wx7h(d=ide).aspx
语义很直接,以上2个经常一起用,如:
if(GetDlgItem(IDC_NUMBER3)->GetWindowText(str),str=="Number3:") //IDC_NUMBER3是个静态文本
{
GetDlgItem(IDC_NUMBER3)->SetWindowText("数字3");
}
还有如果想要静态文本控件相应单击、双击事件,需要设置它的属性Notify为TRUE;ID也需要改了,然后就可以添加事件处理程序了。
以上己见,不对之处望指明。
出错信息:
error C2664: “CWnd::MessageBoxW”: 不能将参数1 从“const char [3]”转换为“LPCTSTR”
原因:2005默认的"使用 Unicode 字符集",解决:在你建立的解决方案的工程文件的属性看到选"配置属性"的"字符集"请选择"使用多字节字符集"就可以了。
你用2005打开2003的文件时候不会出现的这样的错误,是因为编译环境在转换过程中进行了转换.
在修改的时候还遇到一个问题,就事GetWindowTextA和GetWindowTextW的问题,如果使用的是Unicode字符集,那么GetWindowTextW,如果是多字节字符集,就用GetWindowTextA。具体如何还请高手指明。
不过使用GetWindowText都不会出错,它应该是个宏吧?不对不要笑话啊。
关于几个函数:
CWnd::GetDlgItem
CWnd* GetDlgItem( int nID ) const; void GetDlgItem( int nID, HWND* phWnd ) const;
MSDN解释:
Retrieves a pointer to the specified control or child window in a dialog box or other window.
返回一个指向Dialog窗体或其他窗口的指定控件或子窗体的指针。
CWnd::GetWindowText
http://msdn2.microsoft.com/en-us/library/db50wx7h(d=ide).aspx
语义很直接,以上2个经常一起用,如:
if(GetDlgItem(IDC_NUMBER3)->GetWindowText(str),str=="Number3:") //IDC_NUMBER3是个静态文本
{
GetDlgItem(IDC_NUMBER3)->SetWindowText("数字3");
}
还有如果想要静态文本控件相应单击、双击事件,需要设置它的属性Notify为TRUE;ID也需要改了,然后就可以添加事件处理程序了。
以上己见,不对之处望指明。
相关文章推荐
- VC++.NET 2005 几个比较难缠的问题及其解决方法(转)
- vc学习遇到的几个问题。。2005-03-07
- 在VS 2005中的Web应用程序遇到的几个问题
- VC++.NET 2005 几个比较难缠的问题及其解决方法
- vs.net 2005 下多个web application project之间的session共享问题
- Crystal Report at VS .net 2005 问题
- Sql server 2005在安装过程中所遇到的几个问题
- vs.net 2005 beta 2安装问题
- 最近遇到VS.Net的两个问题--无法调试,未加载符号和后台代码无法调用控件
- 在vs.net 2005 手动实现 窗体认证 的问题
- VS2005水晶报表在时部署时遇到的问题
- 使用vs.net遇到的问题
- vs2015 cordova环境安装【个人遇到的几个问题】
- VS.Net 2005 Beta2连接Team Foundation Server的问题
- VS2015连接mysql遇到的几个问题
- VS .Net 2005程序集换名之后的遗留问题
- ASP.NET发布网站遇到的几个问题
- 在VS.NET 2003中建立项目时遇到的两个问题及解决方法 (转贴)
- vs.net开发带reportviewer的webpart中遇到的问题(转)
- VS 2005 安装Asp.net Ajax扩展后项目模板丢失问题的解决