Шаг 229 - CWnd::SubclassDlgItem

BOOL SubclassDlgItem( UINT nID, CWnd* pParent );

Возвращаемое значение
Отлично от нуля если функция успешна, иначе 0.

Параметры
nID
ID элемента управления.
pParent
Родитель элемента управления (обычно диалоговое окно).

Замечания
Вызовите эту функцию для "динамической подклассификации" элемента управления созданного из шаблона диалога и прикрепления его к объекту CWnd. Когда элемент управления динамически подклассифицируется сообщения окон направятся через карту сообщения CWnd и будут вызывать драйверы сообщений в классе CWnd сначала. Сообщения которые переданы к базовому классу будут переданы к заданному по умолчанию драйверу сообщения в элементе управлении. Эта функция присоединяет элемент управление Windows к объекту CWnd и заменяет функции WndProc и AfxWndProc элемента управления. Функция сохраняет старый WndProc в расположении возвращенном GetSuperWndProcAddr функцией.

Пример

class CMyButton : public CButton {...};
// m_myButton - член объекта CMyButton класса CAboutDlg

BOOL CAboutDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	// IDC_BUTTON1 - ID для кнопки на 
	// шаблонt диалога используемый для CAboutDlg.
	m_myButton.SubclassDlgItem(IDC_BUTTON1, this);   

	return TRUE;
	// Возвратитe TRUE если Вы не устанавливаете фокус ввода к элементу управлениz
	// ИСКЛЮЧИТЕЛЬНАЯ СИТУАЦИЯ: OCX Вкладки должны возвратить FALSE
}

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 30.12.2001