哪位大虾帮帮忙!mfc编程中如何在socket类中获取对话框类对象的指针,谢谢了
2个回答
展开全部
你的对话框是在View中打开吗,如果是,打开它时就会知道它的指针的。
可以将这个指针声明为View类的成员变量,这样就行了。如果是在其他地方打开的,也可以把这个指针传递给View使用。
如果对话框不是同一个程序里的,可以用FindWindow来获得。
补充:
菜单打开对话框,那你的对话框应该是模式对话框了,关闭以后也就没有了。所以就没有办法再获得它的指针了,你是不是想获得对话框里输入的参数啊。
可以在DoModal()之后,马上通过刚才声明的对话框变量来获得,然后在传递给View类。
另外菜单打开对话框,也是可以在VIew中打开的。
可以将这个指针声明为View类的成员变量,这样就行了。如果是在其他地方打开的,也可以把这个指针传递给View使用。
如果对话框不是同一个程序里的,可以用FindWindow来获得。
补充:
菜单打开对话框,那你的对话框应该是模式对话框了,关闭以后也就没有了。所以就没有办法再获得它的指针了,你是不是想获得对话框里输入的参数啊。
可以在DoModal()之后,马上通过刚才声明的对话框变量来获得,然后在传递给View类。
另外菜单打开对话框,也是可以在VIew中打开的。
追问
谢谢你的回答 ,我刚自学还不是很了解,没有view类啊,有app,下面是我用过的方法。
方法一:
//GetDlgItem(IDD_UDP_DIALOG);编译有错误是不是不是同一个类里面不能这么活的指针啊
方法二:
//HWND h_dlg=::FindWindow(NULL,"UDP");//得到对话框的句柄
//CUDPDlg * p_dlg= (CUDPDlg*)FromHandle(h_dlg); //由句柄得到对话框的对象指针,但有错误
//p_dlg->dateread(recBuf);//调用C***Dialog中的函数xxx();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询