MFC 应用程序乱码
时间:2011-12-25
来源:互联网
大家好:0 _5 G) F( ^( l* Z2 r' U- N. o
$ o* j9 p, R3 G w" T+ U. w
最近接触了MFC, 请教一个问题,
3 ~5 X/ p3 ^5 O 我用实例代码,代码实现的功能是:MFC SDI应用程序,实现鼠标移动,获取鼠标的坐标信息并显示在状态栏上 , I( K% O* ]6 Y" U
我自己把代码敲在VS2005上编译,最后生成的应用程序能够正常运行,但状态栏上的鼠标坐标信息是乱码。
+ L" l1 r& ~* f" A. u3 V 自己找了很久也没有找到原因, 请问这是什么原因。
8 y8 x) [5 a1 N- S; H6 J; v" ]* ]! ^, e2 g# ^8 ]1 W' T. j
我把消息处理函数代码贴上,,希望大家帮帮忙。 谢谢!!!!!!!
% k5 Y' ?0 M+ X) l& {9 L' J& T, V3 x5 B
9 X' Y, A( O. G, S' P5 ovoid Ctest15View::OnMouseMove(UINT nFlags, CPoint point)+ ?: S) C0 ~1 q$ O/ D: @6 P9 `9 ]
{( }& K8 u" y6 X& w, v! v
// TODO: Add your message handler code here and/or call default
. P$ b+ X+ p& [' v5 F! x char p[ 20 ];
6 q7 x# {# f; t CStatusBar* pStatus = (CStatusBar*)AfxGetMainWnd( )->GetDescendantWindow( AFX_IDW_STATUS_BAR ); t: Y, G. C& h
sprintf( &p[0],"x = %d y = %d",point.x,point.y);
* ^! @) P5 a3 u: {! E pStatus->SetPaneText(pStatus->CommandToIndex(IDS_INDICATOR_MOUSEPOS),(LPCTSTR)&p[0]);. a5 Q4 @- x0 j+ d& s# h$ V
CView::OnMouseMove(nFlags, point);
$ v& v- _ H2 A6 x+ Z}; L# N4 \+ V) X4 C
H, F! F+ W" `& X: Y3 v
代码中的红字是我自己加上去的, 这个代码原作者应该是在VC6.0上编译的
$ o* j9 p, R3 G w" T+ U. w
最近接触了MFC, 请教一个问题,
3 ~5 X/ p3 ^5 O 我用实例代码,代码实现的功能是:MFC SDI应用程序,实现鼠标移动,获取鼠标的坐标信息并显示在状态栏上 , I( K% O* ]6 Y" U
我自己把代码敲在VS2005上编译,最后生成的应用程序能够正常运行,但状态栏上的鼠标坐标信息是乱码。
+ L" l1 r& ~* f" A. u3 V 自己找了很久也没有找到原因, 请问这是什么原因。
8 y8 x) [5 a1 N- S; H6 J; v" ]* ]! ^, e2 g# ^8 ]1 W' T. j
我把消息处理函数代码贴上,,希望大家帮帮忙。 谢谢!!!!!!!
% k5 Y' ?0 M+ X) l& {9 L' J& T, V3 x5 B
9 X' Y, A( O. G, S' P5 ovoid Ctest15View::OnMouseMove(UINT nFlags, CPoint point)+ ?: S) C0 ~1 q$ O/ D: @6 P9 `9 ]
{( }& K8 u" y6 X& w, v! v
// TODO: Add your message handler code here and/or call default
. P$ b+ X+ p& [' v5 F! x char p[ 20 ];
6 q7 x# {# f; t CStatusBar* pStatus = (CStatusBar*)AfxGetMainWnd( )->GetDescendantWindow( AFX_IDW_STATUS_BAR ); t: Y, G. C& h
sprintf( &p[0],"x = %d y = %d",point.x,point.y);
* ^! @) P5 a3 u: {! E pStatus->SetPaneText(pStatus->CommandToIndex(IDS_INDICATOR_MOUSEPOS),(LPCTSTR)&p[0]);. a5 Q4 @- x0 j+ d& s# h$ V
CView::OnMouseMove(nFlags, point);
$ v& v- _ H2 A6 x+ Z}; L# N4 \+ V) X4 C
H, F! F+ W" `& X: Y3 v
代码中的红字是我自己加上去的, 这个代码原作者应该是在VC6.0上编译的
作者: huaqiang98 发布时间: 2011-12-25
字符集是Unicode吧?" U1 Q Q9 g+ W. S/ G0 @
第四行char改为TCHAR+ t6 u9 @) [9 Z
第六行sprintf改为_tcsprintf! K9 H' O$ w( Y2 f) i- t; c
第七行(LPCTSTR)&p[0]改为p
第四行char改为TCHAR+ t6 u9 @) [9 Z
第六行sprintf改为_tcsprintf! K9 H' O$ w( Y2 f) i- t; c
第七行(LPCTSTR)&p[0]改为p
作者: wdx04 发布时间: 2011-12-25
谢谢你的回复,,5 M1 q& _ B; f9 J/ p% `3 _
! U9 P5 r3 A/ C5 L R 这个方法不对。' k# K, M0 Q, g$ R! ?
' `+ C8 ^7 w9 g) `字符集是Unicode
8 C/ J7 V! A; Q9 h; l5 U- z6 g( I. b! B3 o
编译时报错,,找不到_tcsprintf
! U9 P5 r3 A/ C5 L R 这个方法不对。' k# K, M0 Q, g$ R! ?
' `+ C8 ^7 w9 g) `字符集是Unicode
8 C/ J7 V! A; Q9 h; l5 U- z6 g( I. b! B3 o
编译时报错,,找不到_tcsprintf
作者: huaqiang98 发布时间: 2011-12-25
我重新建项目编译代码 就可以了
$ G: }1 c$ i1 @4 F+ E' w. O' z* A$ ]* f h% @( S
我这次选的非Unicode字符集,,看来还是这两者的问题,,但如果采用Unicode字符集如何改代码
$ G: }1 c$ i1 @4 F+ E' w. O' z* A$ ]* f h% @( S
我这次选的非Unicode字符集,,看来还是这两者的问题,,但如果采用Unicode字符集如何改代码
作者: huaqiang98 发布时间: 2011-12-25
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28