Шаг 33 - Как была добавлена подсказка или второй способ

То что было сделано за нас в прошлом шаге можно повторить самим, ручками. Во-первых, в класс диалога был добавлен соответствующий класс подсказки.

class CMyDialog : public CDialog
{
// Construction
// Implementation
protected:
	CToolTipCtrl m_tooltip;
	virtual BOOL OnInitDialog();
};

В функции OnInitDialog добавлено создание подсказки, активизация и связывания текста подсказки с элементом управления.

BOOL CMyDialog::OnInitDialog()
{
	CDialog::OnInitDialog();	// CG: This was added by the ToolTips component.
	// CG: The following block was added by the ToolTips component.
	{
		// Create the ToolTip control.
		m_tooltip.Create(this);
		m_tooltip.Activate(TRUE);
		m_tooltip.AddTool(GetDlgItem(IDC_BUTTON1),"Edit Help");
	}
	return TRUE;	// CG: This was added by the ToolTips component.
}

Была перегружена функция PreTranslateMessage и реализовано перенаправление сообщения в подсказку.

BOOL CMyDialog::PreTranslateMessage(MSG* pMsg)
{
	// CG: The following block was added by the ToolTips component.
	{
		// Let the ToolTip process this message.
		m_tooltip.RelayEvent(pMsg);
	}
	return CDialog::PreTranslateMessage(pMsg);	// CG: This was added by the ToolTips component.
}

Вообщем этого достаточно. Результат Вы видели в прошлом шаге. Трудного ничего нет, можно все прописать ручками.


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