如何获取汉字的UINT值?UP者有分 我想在OnChar中由nChar获取输入汉字的UINT值,要怎么实现呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CString m_Input; //get m_RInput.GetWindowText(m_Input); //Unicode value char* chWord; CString csAll,csSingle,csCodeValue; for(int i=0;i<m_Input.GetLength();i++){ csSingle=m_Input.GetAt(i); chWord=(LPSTR)(LPCTSTR) csSingle; BYTE wL=(BYTE)chWord[0]; //這是低位代碼值 BYTE wH=(BYTE)chWord[1]; //這是高位.把他們組合起來就是你要的 可以取得汉字分开的ASCII码值. 你用CString的Format("%x")可以轉化成16進制.. 截取WM_IME_CHAR消息例如class CMyEdit : public CEdit{// Constructionpublic: CMyEdit();public: virtual ~CMyEdit(); // Generated message map functionsprotected: //{{AFX_MSG(CMyEdit) afx_msg LRESULT OnImeChar(WPARAM wp, LPARAM lp); //}}AFX_MSG DECLARE_MESSAGE_MAP()};CMyEdit::CMyEdit(){}CMyEdit::~CMyEdit(){}BEGIN_MESSAGE_MAP(CMyEdit, CEdit) //{{AFX_MSG_MAP(CMyEdit) ON_MESSAGE(WM_IME_CHAR,OnImeChar) //}}AFX_MSG_MAPEND_MESSAGE_MAP()/////////////////////////////////////////////////////////////////////////////// CMyEdit message handlersLRESULT CMyEdit::OnImeChar(WPARAM wp, LPARAM lp){ ///wp就是要取的汉字码 return Default();} 用汉字的ASCII加上256就是可以了 我已经实现了,谢谢各位先,我发现输入汉字时,它向系统发2次WM_CHAR消息,只要取2次低位拼一下就可以了,仅供大家参考吧,,给分给分 改变滑块颜色 数据类型转换 要实现一个像QQ2009登录框里的账号编辑框一样的子窗口,请问用什么类型 急救!如何一次打开多个文件,并将其显示出来? 请问在那里可以买到或者下载到《ANSI C++ 标准》 打印预览有图象,打印出来什么都没有,谁碰到过,欢迎各路英雄大侠光顾一下? TreeListView的多选问题 一个用到循环数组的程序,好象是数组的问题,请大师们指啊 CBCGPDBGridCtrl里怎么得到每个单元格的内容啊?都是文本的? 怎样以事件处理程序的形式向CMD传送命令?需要自己写控制台程序吗? Hook 的问题 请问——关于CORBA的简单问题!
//get
m_RInput.GetWindowText(m_Input);
//Unicode value
char* chWord;
CString csAll,csSingle,csCodeValue;
for(int i=0;i<m_Input.GetLength();i++){
csSingle=m_Input.GetAt(i);
chWord=(LPSTR)(LPCTSTR) csSingle;
BYTE wL=(BYTE)chWord[0]; //這是低位代碼值
BYTE wH=(BYTE)chWord[1]; //這是高位.把他們組合起來就是你要的
例如
class CMyEdit : public CEdit
{
// Construction
public:
CMyEdit();
public:
virtual ~CMyEdit(); // Generated message map functions
protected:
//{{AFX_MSG(CMyEdit)
afx_msg LRESULT OnImeChar(WPARAM wp, LPARAM lp);
//}}AFX_MSG DECLARE_MESSAGE_MAP()
};CMyEdit::CMyEdit()
{
}CMyEdit::~CMyEdit()
{
}BEGIN_MESSAGE_MAP(CMyEdit, CEdit)
//{{AFX_MSG_MAP(CMyEdit)
ON_MESSAGE(WM_IME_CHAR,OnImeChar)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()/////////////////////////////////////////////////////////////////////////////
// CMyEdit message handlers
LRESULT CMyEdit::OnImeChar(WPARAM wp, LPARAM lp)
{
///wp就是要取的汉字码
return Default();
}