【MFC系列-第16天】企业信息管理软件开发

常见的两种类和类之间相互调用的方法。

16.1 用户权限信息在不同对话框之间共享

①在CWokerApp类中定义变量:

②在CLoginDlg类中进行赋值

③在CMainDlg类中进行访问应用,采用引用型变量

16.2 其他对话框访问主对话框(AfxGetMainWnd)

①在CWorkerApp类中指定主对话框

②在其他对话框中使用全局函数AfxGetMainWnd获取主对话框指针并访问

void CInputDlg::AddToList()
{
if (AfxMessageBox(_T(“是否添加), MB_YESNO) == IDNO)
return;
CString str;
GetDlgItemText(IDC_NUMB, str);

}

16.3 其他对话框访问主对话框(m_pDlg)

思想:直接定义指针变量指向要访问的对话框,这种方法其实没有主对话框

①在CInputDlg类中定义CWorkerDlg类型的指针变量,用来指向CWorkerDlg对话框;需要CInputDlg类中包含CWorkerDlg的头文件或进行声明,然而在头文件中进行包含容易造成类与类之间相互包含的混乱错误,因此可以进行声明;这种声明其实是假声明,只适用于指针类型,不适用于对象。

这种声明可以防止类与类在头文件中相互包含、重复包含而引起的错误。

②在CInputDlg窗口弹出之前,将CWorkerDlg对象指针(this指针)赋值给①中定义的m_pDlg变量

16.4 消息反射:(控件内的消息映射到父窗口类)

a)所有子控件的内部消息都是通过WM_NOTIFY这个消息反射给父窗口;

b)不同的控件类型对应有不同的反射消息种类;

例如:代表Button Notify Click`(按钮点击消息)

代表(选中项变化了)

16.5 在CWnd类中常见的等价关系:

a)判断父子关系:

b)判断是否是最大化:pWnd ->GetStyle() & WS_MAXIMIZE`

c)判断是否可见:

d)判断是否可用:

16.6 CWnd类中常见的静态成员函数:

来源:通信与逆向那些事

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年10月20日
下一篇 2021年10月20日

相关推荐