怎么发消息? 现在要实现类似vc关闭时的功能,即如果文件被改动,会弹出一个对话框,提示你“保存,不保存,取消”,如果保存的话,就需要给mainframe上的那个保存按钮发个消息,怎么发啊?或者,有没有其他的解决办法?谢大侠 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用SendMessage其实你直接调用保持按钮的消息函数就可以拉 获取该按钮(或其他窗口)的句柄,再用 SendMessage 发消息过去就行了。不过你要是为实现上述目的,没必要用这种方法。如果是基于文档-视图的程序,用序列化就行了。 是多文档视图的结构,所以我觉得还是用sendmessage好些(序列化根本就不会用)大侠能不能给句完整的sendmessage(???????) AfxGetMainWnd()->SendMessage(WM_SYSCOMMAND,SC_CLOSE,0); 在mainframe里面怎么得到document的指针啊(如果要用yellowdawnhlm兄的方法的话)?? 多文档视图没必要吧,当文件被改动时,它会自动在退出提示存盘的。要不看看 《VC++技术内幕》去,上面写得很清楚。一定要发消息的话,下面是我的一段代码,用于模拟按下其他程序对话框上的 OK 按钮。void CTrySpyDlg::OnBtonLetOK() { // my code start here // hAppWnd 为其他窗口的句柄 HWND hBtonWnd; LPRECT rcBtonOK; char pszCaption[12]; hBtonWnd = ::GetDlgItem(hAppWnd,IDOK); ::GetWindowText(hBtonWnd,pszCaption,12); // 模拟按下 OK 按钮 ::SetCapture(hBtonWnd); ::SendMessage(hBtonWnd,WM_LBUTTONDOWN,0,0); ::SendMessage(hBtonWnd,WM_LBUTTONUP,0,0); ::ReleaseCapture(); // my code end } (CFrameWnd*)AfxGetMainWnd()->GetActiveView()->GetDocument 如果是要用sendmessage方法,界面上 保存按钮的id是 ID_FILE_SAVE ,这个消息怎么写?我写成AfxGetMainWnd()->SendMessage(WM_SYSCOMMAND,ID_FILE_SAVE,0);结果没有响应 《VC++ 技术内幕》 第四版 Kruglinski p342 windows 的许多面向文档的程序都会跟踪用户对文档的修改,用户试图关闭或退出程序时,系统会弹出一个消息框,询问用户是否保存文档。MFC 通过 CDocument 数据成员 m_bModified 直接支持这种功能 ...... this->m_wndToolBar.SendMessage(WM_COMMAND,ID_FILE_SAVE,0); 怎么在VC里面用代码控制局域网上的另一台计算机上的某个EXE程序运行啊? google orkut邀请。 初级问题:如何对话框中的某一个编辑框在弹出对话框时得到焦点? 请教基础问题关于SetTimer 高分奉送,解决关于VC的几个问题 >>请问在得到了系统时钟的窗体句柄后,如何向里面写入自己的文字?<< 如何往CString插入回车和换行和空格 谁做跨平台的开发? 请问如何的获得COM类型的对象数组 请教Shell高手! 请大虾帮忙!关于电脑一接通电源,马上启动的问题。 初始化SOCKET时出错???
其实你直接调用保持按钮的消息函数就可以拉
大侠能不能给句完整的sendmessage(???????)
{
// my code start here
// hAppWnd 为其他窗口的句柄
HWND hBtonWnd;
LPRECT rcBtonOK;
char pszCaption[12]; hBtonWnd = ::GetDlgItem(hAppWnd,IDOK);
::GetWindowText(hBtonWnd,pszCaption,12); // 模拟按下 OK 按钮
::SetCapture(hBtonWnd);
::SendMessage(hBtonWnd,WM_LBUTTONDOWN,0,0);
::SendMessage(hBtonWnd,WM_LBUTTONUP,0,0);
::ReleaseCapture();
// my code end
}