目录

MFC控件

GetDlgItem 获取控件对象

根据继承关系,有如下几类:

1
2
3
4
5
6
7
CWindow::GetDlgItem
HWND GetDlgItem( intnID)const;
/*
说明——
参数 nID:接收消息的控件的标识;
返回值:标识所标记的控制窗口句柄 
*/
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
CWnd::GetDlgItem
CWnd* GetDlgItem ( intnID) const;
void CWnd::GetDlgItem( int nID, HWND *phWnd) const;
/*
说明——
参数 nID:接收消息的控件的标识;
参数phWnd:子类窗口的指针;
返回值:标识所标记的控件(或子类窗口)的指针; 
*/

//Example
// Uses GetDlgItem to return a pointer to a user interface control.
CEdit* pBoxOne;
pBoxOne = (CEdit*) GetDlgItem(IDC_EDIT1);
GotoDlgCtrl(pBoxOne); 
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
Windows SDK
HWND GetDlgItem(
HWNDhDlg, // handle to dialog box
intnIDDlgItem// control identifier
);
/*
参数说明:
hDlg:标识含有控件的对话框。
nlDDlgltem:指定将被检索的控件标识符。
返回值:如果函数调用成功则返回值为给定控件的窗口句柄。如果函数调用失败,则返回值为NULL,表示为一个无效的对话框句柄或一个不存在的控件。若想获得更多错误信息,请调用GetLastError函数。
*/

控件常用函数

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{	
  CWnd *pbtn1 = (CWnd*)GetDlgItem(IDC_BUTTON1);	//获取控件对象
	TRACE("pbtn1 = %p \r\n ", pbtn1);	//debug中输出
	pbtn1->SetWindowTextW(L"三三三");	//设置控件标题 方法1
	pbtn1->SetWindowTextW(_T("二二二"));	//设置控件标题 方法2
  pbtn1->EnableWindow(false);	// 激活/不激活 控件
  
  RECT r1 = { 0 };	//定义范围变量
	pbtn1->GetWindowRect(&r1);	//取得范围值,并赋给参数r1
}