在classward中,选择视后,在Message中可以看到有OnInitialUpdate消息。添加即可以OnInitialUpdate()函数。
在对话框中,初始化的工作是给OnInitDialog()函数的,所以你在对话框中类是找不到OnInitialUpdate()的。针对话框的类,你使用Classward是在Message中要选择WM_INITDIALOG即可以添加OnInitDialog()函数。
建立MFC单文档,定义View类的成员变量CButton m_button。
在***View类中添加OnCreate 或OnInitialUpdate 函数,并在函数中加入CRectrect_button(40,10,200,60) //控制按钮大小、位置 m_button.Create("hello",WS_CHILD|WS_VISIBLE|WS_BORDER,rect_button,this,IDC_DYNAMICBUTTON)
m_button.ShowWindow(SW_SHOWNORMAL)
这样按钮应该都可以显示出来了。
然后添加消息响应函数。头文件中加入afx_msg void OnBtnDown()
BEGIN_MESSAGE_MAP 和 END_MESSAGE_MAP 之间加入ON_BN_CLICKED(IDC_DYNAMICBUTTON,OnBtnDown) 关联按钮变量;
最后加入定义void ***View::OnBtnDown(){ MessageBox("hello","helloworld",MB_OK)
在头文件中声明一个消息相应函数virtual LRESULT OnMyMessage(WPARAM wParaM,LPARAM lParam)
在.cpp文件中将消息 和具体的消息相应函数联系起来ON_BN_CLICKED(WM_MY_MESSAGE,OnMyMessage
实现具体的消息相应函数:LRESULT CMyView::OnMyMessage(WPARAM wParam,LPARAM lParam)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)