初学者点击对话框中的按钮无反应
菜鸟求助:点击对话框中的按钮无反应
LeftFindDlg.cpp:
LeftFindDlg.h:
刚开始接触MFC,对其运行机制不是很了解,各路大神能帮我看看是什么原因吗?
------解决思路----------------------
CDHtmlDialog 还是 CDialog ? 你这个对话框是要显示HTML网页吗? IDC_LeftFind_Button这个按钮是你自己拖上去的还是网页中某一元素的ID ? 目测是你自己拖上去的啊
------解决思路----------------------
CDialog* dlg = new CDialog;
dlg->Create(MAKEINTRESOURCE(IDD_LeftFind_Dialog));
dlg->ShowWindow(1);
------------------------------------------------------------------------------------
即便是用非模态的,也不是new CDialog,而是new CLeftFindDlg 啊
LeftFindDlg.cpp:
void CLeftFindDlg::OnBnClickedLeftfindButton()
{
MessageBox(_T("test"));
}
BEGIN_MESSAGE_MAP(CLeftFindDlg, CDHtmlDialog)
ON_BN_CLICKED(IDC_LeftFind_Button, &CLeftFindDlg::OnBnClickedLeftfindButton)
END_MESSAGE_MAP()
LeftFindDlg.h:
#pragma once
#ifdef _WIN32_WCE
#error "CDHtmlDialog is not supported for Windows CE."
#endif
// CLeftFindDlg dialog
class CLeftFindDlg : public CDHtmlDialog
{
DECLARE_DYNCREATE(CLeftFindDlg)
public:
CLeftFindDlg(CWnd* pParent = NULL); // standard constructor
virtual ~CLeftFindDlg();
// Overrides
HRESULT OnButtonOK(IHTMLElement *pElement);
HRESULT OnButtonCancel(IHTMLElement *pElement);
// Dialog Data
enum { IDD = IDD_LeftFind_Dialog, IDH = IDR_HTML_LEFTFINDDLG3 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
virtual BOOL OnInitDialog();
DECLARE_MESSAGE_MAP()
DECLARE_DHTML_EVENT_MAP()
public:
DECLARE_EVENTSINK_MAP()
afx_msg void OnBnClickedLeftfindButton();
};
刚开始接触MFC,对其运行机制不是很了解,各路大神能帮我看看是什么原因吗?
------解决思路----------------------
CDHtmlDialog 还是 CDialog ? 你这个对话框是要显示HTML网页吗? IDC_LeftFind_Button这个按钮是你自己拖上去的还是网页中某一元素的ID ? 目测是你自己拖上去的啊
------解决思路----------------------
CDialog* dlg = new CDialog;
dlg->Create(MAKEINTRESOURCE(IDD_LeftFind_Dialog));
dlg->ShowWindow(1);
------------------------------------------------------------------------------------
即便是用非模态的,也不是new CDialog,而是new CLeftFindDlg 啊