怎么向视图类CView发送自定义消息

怎么向视图类CView发送自定义消息,第1张

如果你是在CView内部想它的view窗口发送消息的话,可以直接调用SendMessage

LRESULT SendMessage(

UINT message,

WPARAM wParam = 0,

LPARAM lParam = 0

)

如果你是在别的地方向CView发送消息,可能需要调用GetSafeHwnd获得窗口句柄了;

自定义消息,可以直接定义消息ID,一般要求大于WM_USER,如

#define WM_MY_MSG1 WM_USER+11

#define WM_MY_MSG2

要在view中添加按钮,就只能动态创建了,先new一个CButton对象,然后调用成员Create创建这个按钮。Create中有一个参数ID,你可以在消息映射中添加ON_COMMAND(ID, func) 来相应按钮的单机消息。

pdate()

{

CFormView::OnInitialUpdate()

/* 加入你要的初始化代码*/

GetParentFrame()->RecalcLayout()

ResizeParentToFit()

}

在CFormView中,通过跟踪可发现程序不会去调用CDialog::OnInitDialog(),在CFormView::Create(**)中有如下语句CreateDlg(m_lpszTemplateName, pParentWnd),既对话框通过非模态创建,创建期间会发送WM_CREATE消息,但初始化代码不能写在OnCreate函数里面,因为此时对话框还没创建完毕,在所有的创建工作结束后,既CFormView::Create(**)执行完毕后系统会调用OnInitialUpdate(),这时候就可以加入你的初始化代码了

另外,团IDC网上有许多产品团购,便宜有口碑


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11856943.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存