WEB开发网
开发学院手机开发Windows Mobile 开发 Windows Mobile 学习笔记之自定义的 CEdit 阅读

Windows Mobile 学习笔记之自定义的 CEdit

 2010-02-26 21:31:00 来源:WEB开发网   
核心提示:前章写到自定义的Cedit通知Scroll 滚动并弹出软键盘,实现如下:1)新建一个继承CEdit的类CmyEdit,Windows Mobile 学习笔记之自定义的 CEdit,自定义消息WM_MY#define WM_MY (WM_USER+1000)2)实现消息WM_ONLBOTTONDOWNvoid CmyEd

前章写到自定义的Cedit通知Scroll 滚动并弹出软键盘。

实现如下:

1)新建一个继承CEdit的类CmyEdit,自定义消息WM_MY

#define WM_MY (WM_USER+1000)

2)实现消息WM_ONLBOTTONDOWN

void CmyEdit::OnLButtonDown(UINT nFlags, CPoint point)

{

// TODO: 在此添加消息处理程序代码和/或调用默认值

CEdit::OnLButtonDown(nFlags, point);

::SipShowIM(SIPF_ON);//打开软键盘

RECT rc;

GetWindowRect(&rc);

GetParent()->PostMessageW(WM_MY,WPARAM(rc.top));//发送消息,及控件的位置

}

3)在实现的对话框类中新建一个函数用于响应WM_MY

头文件中:

afx_msg LRESULT OnMyMg(WPARAM w,LPARAM l);

cpp文件中:

BEGIN_MESSAGE_MAP(CaddcDlg, CDialog)

……

ON_MESSAGE(WM_MY, OnMyMg)

……

END_MESSAGE_MAP()

实现函数:

LRESULT CaddcDlg::OnMyMg(WPARAM w,LPARAM l)

{

int pos=int(w);

if(pos>py)

OnVScroll(SB_THUMBPOSITION,pos-py,NULL);

return 1;

}

一个自定义的CEdit就完成了。当点击编辑框时弹出软键盘。

Tags:Windows Mobile 学习

编辑录入:coldstar [复制链接] [打 印]
赞助商链接