MFC tab_control 标签页里怎么调用主窗口里的函数,谢谢。
上面两个图是主窗口FFTinDLGdlg的mdrawlin函数画出来的,想在下面的tab页Dialog1里用这个函数。请写详细点~~~需要的语句,在哪添加语句~O(∩_∩...
上面两个图是主窗口FFTinDLGdlg的mdrawlin函数画出来的,
想在下面的tab页Dialog1里用这个函数。
请写详细点~~~需要的语句,在哪添加语句~O(∩_∩)O谢谢
不然找不到地方……………… 展开
想在下面的tab页Dialog1里用这个函数。
请写详细点~~~需要的语句,在哪添加语句~O(∩_∩)O谢谢
不然找不到地方……………… 展开
3个回答
展开全部
一般来说,你这样的模式,两个对话框应该有主从关系。那么,
Dialog1里面,直接这样应该就可以(注意Dialog1的cpp头部包含主对话框.h)
CFFTinDlg* pdlg = (CFFTinDlg *)GetParent();
pdlg->mdrawlin(&dc,....);//需要将本对话框dc和坐标什么的传递过去,如果函数没这个参数,需要加上。
Dialog1里面,直接这样应该就可以(注意Dialog1的cpp头部包含主对话框.h)
CFFTinDlg* pdlg = (CFFTinDlg *)GetParent();
pdlg->mdrawlin(&dc,....);//需要将本对话框dc和坐标什么的传递过去,如果函数没这个参数,需要加上。
追问
error C2660: “GetParent”: 函数不接受 0 个参数
error C2143: 语法错误 : 缺少“;”(在“->”的前面)
-----
http://zhidao.baidu.com/question/555803796?quesup2&oldq=1
这里有代码,能不能帮忙看下。谢啦~
追答
void CDialog1::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CFFTinDLGdlg *pDlg = (CFFTinDLGdlg *)(GetParent()->GetParent());
//pDlg->函数或变量;
}
加上括号试试,你的工程版本太高,我这最高VS2008,没法打开调试。
展开全部
void CDialog1::OnBnClickedButton1()
{
((FFTinDLGdlg*)GetParent())->mdrawlin();
}
{
((FFTinDLGdlg*)GetParent())->mdrawlin();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在tab页 引用主窗口指针,然后再调用主窗口函数,往往在主窗口的初始化里,把主窗体赋给一个全局变量,例如 g_mainwnd=this,然后再tab页里用g_mainwnd->xxx();调用主窗体函数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询