edit控件在接受中文字符时,OnChar函数只接受每个汉字第一个字符的ascii码,比如说 网络 这两个字,应该有四个字符组成,OnChar函数只接受第一,第三个字符,怎么回事啊。
解决方案 »
- 怎么获得对话框绘图区大小
- Ctreectrl 鼠标经过会引起重绘?如何阻止它的重绘?
- VB调用VC编制的DLL问题,VB的String 对应VC应用什么类型
- 用什么工具制作、编译ico文件?
- Tab Control重画标题栏,该如何实现?
- 同意鄙视鸟人的进来
- ★★★ 增分100...(1) 如何把Matlab的代码转化为C代码,在VC中运行? ★★★
- 怎样把一个LONG 型的变量转化为CSTRING ?
- 怎么给radio button加底色?我在对话框中加了背景色,并且在onctrlcolor中给 radio加了背景色可是他只是加了有文字的地方,那个小圆圈周围
- Win98的任务栏图标区(系统托盘)是否支持256色图标,Win95呢?
- CAsyncSocket类问题:到底是一个还是多个线程在工作?
- 线程中对调用窗口的UpdateData()函数时出错,怎么办阿?
IsDBCSLeadByte()函数能检察一个字符是不是汉字的第一个字符
(HWND) hWnd, // handle to destination window
WM_GETTEXT, // message to send
(WPARAM)55, // number of characters to copy
(LPARAM) sName // text buffer
);
这个是得到CEdit的汉字
不知道你是取汉字还是要CEdit上发送汉字?
如果是往上传汉字,可以用
for( int i = 0; i < strGB.GetLengh() ; i ++)
SendMessage(hWnd,WM_CHAR,(short)strGB.GetAt(i),2);试试
QQ:41570857
在onchar函数中添加以下语句。
if(pedit)
SendMessage(pedit->m_hWnd,WM_CHAR,nChar);xuwj2000(海浪) 我没有QQ,不好意思。还有一个有意思的问题,用vc net 2003 的向导生成的dialog+edit程序,在调试模式下输入汉字,然后退出,输出大量的信息说有冲突,不解。