一个类与类之间传值的问题.高手教我~
我在模式对话框得到一个SYSTEMTIME值.我想传回主对话框CTimerShutDownDlg 类.但好像不能直接在
CTimerShutDownDlg 类中Fram fram;
setTime=fram.sysTime;
得不到值.是不是模式对话框一OVER就析构了.值也清零了?这样不了行.
我就试着在CTimerShutDownApp类中添加变量systemTime.想法是模式对话框OK时,将值传到CTimerShutDownApp类中保存.再在CTimerShutDownDlg中调用.可行...编绎也成功.程序功能都实现了.
可是当我关掉程序的时候总是出现一个错误报告.我不知道为什么?我不执行下面语句的相应控件能正常退出.哪位大哥,请详细点教我.我一个人学VC,很难的.经常没人请教.往往别人一个小时的问题,我要搞几天.实在是没折了.在此谢谢各位大哥帮忙了.....不胜感激.
void Fram::OnOK()
{
CTimerShutDownApp *pDlg=(CTimerShutDownApp*)AfxGetMainWnd();
m_nTurn=true;
COleDateTime dt;
dt=m_strEdit.GetDateTime();
sysTime.wYear=dt.GetYear();
sysTime.wMonth=dt.GetMonth();
sysTime.wDay=dt.GetDay();
sysTime.wHour=dt.GetHour();
sysTime.wMinute=dt.GetMinute();
sysTime.wSecond=dt.GetSecond();
SYSTEMTIME sys;
GetLocalTime(&sys);
if(sys.wYear>=sysTime.wYear&&sys.wMonth>=sysTime.wMonth&&sys.wDay>=sysTime.wDay&&sys.wHour>=sysTime.wHour&&sys.wMinute>=sysTime.wMinute&&sys.wSecond>=sysTime.wSecond)
{
AfxMessageBox("设置的时间已过时,请重新设置",MB_OK);
UpdateData(false);
}
else{
pDlg->systemTime.wYear=dt.GetYear();
pDlg->systemTime.wMonth=dt.GetMonth();
pDlg->systemTime.wDay=dt.GetDay();
pDlg->systemTime.wHour=dt.GetHour();
pDlg->systemTime.wMinute=dt.GetMinute();
pDlg->systemTime.wSecond=dt.GetSecond();
CDialog::OnOK();
}
}