SDI窗口拆分后的通信

wt31016 2009-01-09 01:49:09
我在主框架窗口中将窗口分成3部分

同时我在主框架中响应了"打开"菜单响应命令(打开图片文件,并保存图片全路径名)

代码如下: 其中m_fileNameList为CMainFrame的成员,用来保存文件全路径的容器
void CMainFrame::OnFileOpen()
{
// TODO: 在此添加命令处理程序代码
CString szFilter = "TGA文件 (*.tga)|*.tga|所有文件 (*.*)| *.*||";
CFileDialog dlg(TRUE, NULL, NULL, OFN_ALLOWMULTISELECT | OFN_OVERWRITEPROMPT, szFilter);
dlg.m_ofn.nMaxFile = 100;
dlg.m_ofn.lpstrFile = new TCHAR[dlg.m_ofn.nMaxFile];
ZeroMemory(dlg.m_ofn.lpstrFile, sizeof(TCHAR) *dlg.m_ofn.nMaxFile);

if (dlg.DoModal() == IDOK)
{
POSITION pos_file = dlg.GetStartPosition();
while (pos_file)
{
m_fileNameList.push_back(dlg.GetNextPathName(pos_file));
}
}
}

保存好后,我现在要根据m_fileNameList的值在其中一个拆分窗口中把图片显示出来,
问题:
在执行完OnFileOpen()后,如何让程序去执行将要显示图片的视类的OnDraw()以达到显示的目的,也就是怎么将值传给其中的一个视类,并进行显示??

...全文
129 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
showxier 2009-01-10
  • 打赏
  • 举报
回复
同意楼上.

得到左或右视指针,你将要显示图片的那个视图.

然后pView->设置图片文件路径
pView->InvalidateRect/Invalidate

CXXXView下OnDraw下

DrawBmp(图片文件路径);
Tinary3v0 2009-01-10
  • 打赏
  • 举报
回复
如果用的是CSplitterWnd mySplit;
使用C**View* paneView = (C**View*)mySplit.GetPane(int rou,int col);
取得你要的位置的窗体指针 然后通过指针操作该窗体。
syy64 2009-01-09
  • 打赏
  • 举报
回复
通过搜索该视类的窗体名称来获得该视类的指针,来给它传值或给它发消息。
wt31016 2009-01-09
  • 打赏
  • 举报
回复
来人啊

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧