【对话框的问题】 vc的对话框中弹出另一个非模式对话框。为什么新增的对话框的按钮事件不被执行呢?请高手帮忙 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不是吧,CXXDialog aa;if(aa.DoModal()==IDOK)这样的话不就可以判断了吗? CDialog *pDlg;// 全局变量在主对话框的ok按钮中显示一个非模态对话框 pDlg = new CDialog(); pDlg->Create(IDD_DLG); pDlg->ShowWindow(SW_SHOW);IDD_DLG的按钮事件是在资源编辑器中双击产生的,就是ok和cancel按钮头文件 // Generated message map functions //{{AFX_MSG(CDlg) virtual void OnOK(); virtual void OnCancel(); //}}AFX_MSGcpp文件BEGIN_MESSAGE_MAP(CDlg, CDialog) //{{AFX_MSG_MAP(CDlg) ON_BN_CLICKED(IDOK, OnOK) ON_BN_CLICKED(IDCANCEL, OnCancel) //}}AFX_MSG_MAPEND_MESSAGE_MAP()void CDlg::OnOK() { // TODO: Add extra validation here MessageBox("OnOK"); //CDialog::OnOK();}void CDlg::OnCancel() { // TODO: Add extra cleanup here MessageBox("OnCancel"); //CDialog::OnCancel();} DECLARE_MESSAGE_MAP()怎么弹出对话框后按ok和cancel都没有反应啊?请高手帮忙! CDialog *pDlg;// pDlg和CDlg没有关联上 ouyh12345(五岭散人) ( ) 信誉:100 Blog 加为好友 请问怎么关联啊? pDlg = new CDialog();void CDlg::OnOK() 从类名上看,你显示的非模态对话框的类名是CDialog,这是对话框类的基类,你的函数中写的是CDlg,当然没反应,应该写成:pDlg=new CDlg(); ouyh12345(五岭散人) ( ) 信誉:100 Blog 加为好友 wltg2001(红猪) ( ) 信誉:100 Blog 加为好友 确实是错在这里。谢谢了!还想问下,为什么新产生的对话框总是遮住了显示他的那个对话框啊?我要让他不遮住,怎么解决啊?下午结贴,高手帮忙。 求助:自定义的webbrower浏览器中自动激活Activex控件 MFC WIN32 有没有好点的绘图的例子 ODBC 中 select 1 into v_variable from dual; v_variable怎么声明 老问题了DEBUG 和release的问题??域名解析的问题 CString 变量的错误 重分求InstallShield DevStudio 9下載地址 关于复合控件的聚合问题 VC 绘制曲线 锯齿 请教文件的拖放问题! VC通过ADO操作ACCESS数据库,取备注类型的数据为什么不能取全 CEditview背景颜色
if(aa.DoModal()==IDOK)
这样的话不就可以判断了吗?
在主对话框的ok按钮中显示一个非模态对话框
pDlg = new CDialog();
pDlg->Create(IDD_DLG);
pDlg->ShowWindow(SW_SHOW);
IDD_DLG的按钮事件是在资源编辑器中双击产生的,就是ok和cancel按钮
头文件
// Generated message map functions
//{{AFX_MSG(CDlg)
virtual void OnOK();
virtual void OnCancel();
//}}AFX_MSG
cpp文件
BEGIN_MESSAGE_MAP(CDlg, CDialog)
//{{AFX_MSG_MAP(CDlg)
ON_BN_CLICKED(IDOK, OnOK)
ON_BN_CLICKED(IDCANCEL, OnCancel)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()void CDlg::OnOK()
{
// TODO: Add extra validation here
MessageBox("OnOK");
//CDialog::OnOK();
}void CDlg::OnCancel()
{
// TODO: Add extra cleanup here
MessageBox("OnCancel");
//CDialog::OnCancel();
} DECLARE_MESSAGE_MAP()怎么弹出对话框后按ok和cancel都没有反应啊?
请高手帮忙!
请问怎么关联啊?
void CDlg::OnOK()
从类名上看,你显示的非模态对话框的类名是CDialog,这是对话框类的基类,你的函数中写的是CDlg,当然没反应,
应该写成:pDlg=new CDlg();
wltg2001(红猪) ( ) 信誉:100 Blog 加为好友
确实是错在这里。谢谢了!还想问下,为什么新产生的对话框总是遮住了显示他的那个对话框啊?我要让他不遮住,怎么解决啊?下午结贴,高手帮忙。