MFC 父窗口操作子窗口控件的步骤及代码示例
MFC 父窗口操作子窗口控件的步骤及代码示例
在 MFC 应用程序中,有时需要通过父窗口来操作子窗口中的控件。以下步骤可以帮助您实现这一功能:
- 在子窗口类中添加一个公共成员函数,用于接收父窗口传递过来的参数并进行操作。 例如:
void CChildDlg::SetDlgItemTextFromParent(int nID, LPCTSTR lpszText)
{
SetDlgItemText(nID, lpszText);
}
- 在父窗口中获取子窗口的句柄,并调用子窗口中的公共函数。 例如:
CChildDlg* pChildDlg = (CChildDlg*)GetDlgItem(IDC_CHILDDLG);
if (pChildDlg != NULL)
{
pChildDlg->SetDlgItemTextFromParent(IDC_CHILD_EDIT, _T('Hello MFC!'));
}
其中,IDC_CHILDDLG 为子窗口的 ID,IDC_CHILD_EDIT 为子窗口中需要操作的控件的 ID。可以根据实际情况进行修改。
需要注意的是,如果子窗口是通过 CreateDialog 创建的,需要在 CreateDialog 后获取子窗口的句柄。例如:
CChildDlg dlgChild;
dlgChild.Create(IDD_CHILDDLG, this);
HWND hWndChild = dlgChild.GetSafeHwnd();
其中,IDD_CHILDDLG 为子窗口的资源 ID,this 为父窗口的指针。获取子窗口句柄后,就可以进行操作了。
原文地址: https://www.cveoy.top/t/topic/ot0w 著作权归作者所有。请勿转载和采集!