CWnd类型:
CWnd是MFC中所有组件对象的父类,GetDlgItem()可以通过组件的ID号得到组件对象的地址,
这里是以父类指针CWnd*返回,如果需要使用可以强转,CWnd类封装的窗口操作主要包括窗口的创建和销毁、
操作窗口风格、操作窗口状态、窗口子类化、获取指定窗口等。除窗口操作外,CWnd类还实现以下功能。
获取控件内容的方法:
CWnd::GetWindowText
设置控件内容的方式:
CWnd::SetWindowText
CString str;
GetDlgItem(IDC_STATIC1)->GetWindowTextW(str); //获取控件的内容 Caption
MessageBox(str);
//设置控件的内容
GetDlgItem(IDC_STATIC1)->SetWindowTextW(L"Hello World!");
添加控件Value类别变量
m_value
获取控件值
UpdateData(TRUE);
MessageBox(m_value);
设置控件值
m_value = "Test"
UpdateData(FALSE);
CWnd::GetDlgItem
CButton *pbtn = (CButton *)GetDlgItem(IDC_BTN_OK);
pbtn->类中的方法;
动态改变控件内容
CWnd::SetDlgItemText
CWnd::GetDlgItemText
贴图:
CRect rcClient;
GetWindowRect(&rcClient);
CDC memDC; // 装载位图的DC。假设已Create,位图已选入
CBitmap cb;
cb.LoadBitmap(IDB_GIRL);//IDB_GIRL位图的ID
memDC.CreateCompatibleDC(pDC);
memDC.SelectObject(&cb);
pDC-> BitBlt(20, 20, rcClient.Width(), rcClient.Height(),&memDC,0, 0, SRCCOPY);
memDC.DeleteDC();
虽然UpdateData这种方式很容易,但是他针对的是所有的控件关联变量,所以灵活性不行,建议使用
最原始的方式编制。