游戏开发论坛

 找回密码
 立即注册
搜索
查看: 5424|回复: 4

怎样实现中英文输入?是否要用到WM_CHAR跟WM_IME_COMPOSITION

[复制链接]

58

主题

281

帖子

281

积分

中级会员

Rank: 3Rank: 3

积分
281
QQ
发表于 2003-9-8 21:40:00 | 显示全部楼层 |阅读模式
刚才看了一段源代码,它只用了WM_CHAR消息就实现了中英文输入,好奇怪啊。WM_CHAR不是只能响应单个字符的输入吗?

case WM_CHAR: // when key down
                        switch(wParam)
                        {
                        case VK_BACK: // backspace, delete 2 char if chn, delete 1 char if eng
                                len=lstrlen(g_DispMsg);
                                if (len>0)
                                {
                                        if ( g_DispMsg[len-1] < 0 && len > 1 ) // chinese character
                                        {
                                                g_DispMsg[len-1]=0;
                                                g_DispMsg[len-2]=0;
                                        }
                                        else g_DispMsg[len-1]=0;
                                }
                                break;
                        default: // catch the string
                                if (lstrlen(g_DispMsg)>39)
                                        break;
                                msg[0]=(char)wParam;
                                msg[1]=0;
                                lstrcat(g_DispMsg,msg);
                                break;
                        }
                        break; [em5]

90

主题

797

帖子

833

积分

高级会员

论坛版主

Rank: 4

积分
833
QQ
发表于 2003-9-9 18:42:00 | 显示全部楼层

Re:怎样实现中英文输入?是否要用到WM_CHAR跟WM_IME_COMPOSITIO

你应该试试看

3

主题

37

帖子

37

积分

注册会员

Rank: 2

积分
37
发表于 2003-9-10 09:59:00 | 显示全部楼层

Re:怎样实现中英文输入?是否要用到WM_CHAR跟WM_IME_COMPOSITIO

一直对输入法这点比较模糊..

关注一下

23

主题

515

帖子

552

积分

高级会员

Rank: 4

积分
552
发表于 2003-9-10 10:37:00 | 显示全部楼层

Re:怎样实现中英文输入?是否要用到WM_CHAR跟WM_IME_COMPOSITIO

成功的话,别忘了贴出来~:)

58

主题

281

帖子

281

积分

中级会员

Rank: 3Rank: 3

积分
281
QQ
发表于 2003-9-11 00:52:00 | 显示全部楼层

测试成功

原来当你输入一个中文字时,窗口就会收到两条WM_CHAR消息,
只要在收到消息的时候把wParam存起来就行了,爽~~~~~~~~ [em13]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-11-25 13:24

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表