如提
我现在有个类,类中有个onclick()事件.
我现在想在这个onclick()中去判断另一个类(对话框类)的一个按钮的onButton();
如果单击了这个按钮,在onclick()中会执行下面的程序.不知道说清楚没有,希望高手赐教,希望说的详细点!
类似下面.
CInterDlg interdlg; //interdlg.DoModal (); if(interdlg.DoModal () == IDC_ADD_RASTER)//IDOK)
{
::AfxMessageBox ("11111");
}
但这样写没反映~谢谢~
我现在有个类,类中有个onclick()事件.
我现在想在这个onclick()中去判断另一个类(对话框类)的一个按钮的onButton();
如果单击了这个按钮,在onclick()中会执行下面的程序.不知道说清楚没有,希望高手赐教,希望说的详细点!
类似下面.
CInterDlg interdlg; //interdlg.DoModal (); if(interdlg.DoModal () == IDC_ADD_RASTER)//IDOK)
{
::AfxMessageBox ("11111");
}
但这样写没反映~谢谢~
dlg.isPushButton = TRUE;
dlg.DoModal();在CInterDlg的OnCreate中这样写:
CDialog::OnCreate(...);...if (isPushButton == TRUE)
{
OnAddRasterBtnClick();
}
dlg.Create(...);
dlg.ShowWindow(SW_SHOW);
dlg.OnAddRasterBtnClick();
如果是我理解的样子,你可以在CInterDlg类中响应按钮事件,调用EndDialog(IDC_ADD_RASTER),其它代码不变。
onButton()之后就置成true然后在 onclick()的时候去读这个变量
方案2: onButton()可以向 onclick()的类发送一个消息 来说我点过了然后就可以在onclick()类里随便怎么做了
{
bool bFlag=false;
}
void B::onButton()
{
bFlag=true;
}
Class A()
{
B dlg;
}
void B::onclick()
{
if(dlg.bFlag)......
}大概的思路
{
CInterDlg interdlg; //interdlg.DoModal ();
if()
{interdlg=IDC_ADD_RASTER;}
else
{}
onclick(interdig);
}onclick()
{
if(interdlg.DoModal () == IDC_ADD_RASTER)//IDOK)
{
::AfxMessageBox ("11111");
}
}