Шаг 101 - Немодальный диалог

Мы все с вами как-то модальный диалог использовали, но есть ряд задач где нужен немодальный. Итак, создаем шаблон и класс. Я кнопку вызова диалога привяжу к событию в классе рамки окна. Подключаем описание класса и создаем объект.

#include "MyDialog.h"

class CMainFrame : public CFrameWnd
{
protected: // create from serialization only
	CMainFrame();
	DECLARE_DYNCREATE(CMainFrame)
	CMyDialog cm;
// Attributes
public:

......
};

Теперь нам диалог нужно создать. Воспользуемся функцией OnCreate():

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	........
	EnableDocking(CBRS_ALIGN_ANY);
	DockControlBar(&m_wndToolBar);
	cm.Create(IDD_MYDIALOG_DIALOG,this);
	return 0;
}

Вот и все. Осталось при выборе меню его показывать:

void CMainFrame::OnTestTest() 
{
	cm.ShowWindow(SW_SHOW);	
}

Запускаем, выбираем пункт меню:

101_1.gif (5862 b)


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