更新时间:2022-04-27 15:21:49
你好,
你可以使用CopyData消息。
you can use CopyData message.
在你的对话框中,你可以发送如下:
In your Dialog, you can send as following:
m=10; // user input
COPYDATASTRUCT cpdata;
cpdata.cbData = 999; //函数标识符
cpdata.dwData = 1; //消息类型
cpdata.lpData =(PVOID)& m; //这个你要保存在文件
AfxGetMainWnd() - > SendMessage(WM_COPYDATA,(WPARAM)0,(LPARAM)(LPVOID)& cpdata);
COPYDATASTRUCT cpdata; cpdata.cbData = 999; // function identifier cpdata.dwData = 1; // message type cpdata.lpData = (PVOID)&m; // this you want to save in document AfxGetMainWnd()->SendMessage(WM_COPYDATA, (WPARAM)0, (LPARAM)(LPVOID)&cpdata);
在CMainframe中,你覆盖OnCopyData(在类向导中添加WM_COPYDATA的事件处理程序):
In CMainframe, you overwrite OnCopyData (add the event handler for WM_COPYDATA in class wizard):
BOOL CMainFrame::OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct)
{
if (pCopyDataStruct && pCopyDataStruct->cbData == 999 && pCopyDataStruct->dwData == 1)
{
GetDocument()->m = *(pCopyDataStruct->lpData);
return TRUE;
}
return CSDIFrameWndEx::OnCopyData(pWnd, pCopyDataStruct); // I don't know the base class but class wizard does it for you
}
问候,Guido
Regards, Guido