全局函数访问类成员方法
2011-12-27 14:57
176 查看
全局函数(或者回调函数)访问类成员函数
全局或回调函数访问类成员,这个问题有些老生长弹,但有很多方法都可以用,这里进行小小的总结一下。
第一种方法:使用API函数:
SendMessage(AfxGetMainWnd()->m_hWnd,DRAWPIC_OWNER,NULL,NULL);
SendMessage(AfxGetApp()->GetMainWnd()->m_hWnd,DRAWPIC_OWNER,NULL,NULL);
SendMessage(AfxGetApp()->m_pMainWnd->GetSafeHwnd(),DRAWPIC_OWNER,NULL,NULL);
CWnd::FromHandle(HWND hwnd) //HWND与CWND互转
AfxGetMainWnd()->GetDlgItem(IDC_EDIT1)->SetWindowText(_T("aaa"));
第二种方法:使用程序本身的全局变量
在app的类中,VC会自动定义一个theApp全局变量,而且主界面里会自动包含他,自己定义的窗体可以包含头文件后自动使用
PostMessage(theApp.m_pMainWnd->GetSafeHwnd(),DRAWPIC_OWNER,NULL,NULL);
第三种方法:使用程序自定义的全局变量或指针 (与C++BUILDER中相似,访问对象的指针)
XXXClass *p或者XXXClass b;在生成窗体或实例对象时,让p=&对象,或者b = 对象;然后用extern在使用处使用。
第四种方法,象线程的函数一样,在创建时把当前窗体或需要的窗体类的指针当作参数传进去。
还有一种很笨的方法,用定时器定时查看全局函数中的全局数据,到达目的后就可以直接操作了。
相关文章推荐
- 获得全局函数和成员函数指针的部分traits的方法
- 类成员函数作为CallBack函数时3种访问类成员变量的方法
- 普通函数访问类的公有成员函数方法
- 私有成员函数外部访问方法
- 类的成员函数和全局函数的互相调用
- 获取类成员函数地址和调用的方法
- 类的静态成员变量和静态成员函数的使用方法二
- C++ Hook(钩子)编程,通过内联汇编,使类成员函数代替全局函数(静态函数)
- 类--类的成员方法(成员函数)定义
- 全局的callback函数访问一个类的成员变量
- objective-C学习笔记(四)函数成员:方法(函数)
- C++静态函数中调用非静态成员函数或变量(方法1静态变量的方法)
- 关于使用类成员函数作为回调的方法
- c++将构造与非成员函数虚化的方法
- php部分(查看文件、建立站点、语法变量、变量的几个方法、“全局局部变量的调用”、static、函数参数的作用域);
- 类的成员函数指针的使用方法
- C++成员函数指针的另类调用方法
- 将类的成员函数作为回调函数的方法
- CString 成员函数使用方法
- C++成员函数指针的使用方法