Стандартные управляющие элементы находятся в панели инструментов Toolbox. Управляющий элемент характеризуется свойствами и событиями. Когда происходит событие, автоматически выполняется код обработчика, который мы связали с этим
Кроме стандартных элементов управления существует множество элементов управления, созданный независимыми производителями. Такие элементы называются ActiveX. Они хранятся в файлах, имеющих расширение . Их можно включать в программу точно также, как это делается со стандартными компонентами панели Toolbox. Можно размещать управляющие элементы ActiveX в диалоговом окне, задавать их свойства и связывать код обработчиков с их событиями.
Управляющий элемент ActiveX похож на DLL и также как и она должен находится в одном из трех мест
WINNT\System32 или WINDOWS\System32PATH Управляющий элемент ActiveX подобно DLL также компонуется с приложением динамически.
Управляющие элементы ActiveX расширяют стандартные возможности среды программирования и позволяют создавать современные программы простыми средствами, используя уже наработанный и испытанный код.
Цель настоящей лабораторной работы состоит в том, чтобы на примере управляющего элемента ActiveX познакомиться с технологией его включения в приложение. В качестве готового управляющего элемента ActiveX применим календарь. Он хранится в файле MSCAL. и этот файл должен находиться на Вашем компьютере в одном из каталогов
C:\Office2000\ PFILES\MSOFFICE\OFFICE C:\Program Files\Microsoft Office\Office Для удобства он скопирован в каталог размещения данной лабораторной работы.
Войдите в свой каталог выполнения лабораторных работ
Запустите оболочку Microsoft Visual Studio .NET 2003
Создайте новый проект и назовите его
Настройте мастер 

Установите в раскрывающемся списке Solution Configurations режим построения решения ReleaseПеред тем, как можно будет использовать управляющий элемент календаря ActiveX, его нужно зарегистрировать в Windows, чтобы сведения о нем были внесены в системный реестр. Это можно сделать с помощью утилиты, включенной в оболочку.
Выполните команду главного меню оболочки
Появится окно утилиты, в котором нужно выбрать команду File/Register Controls

Откроется диалоговое окно Register Controls, в котором перечислены все управляющие элементы ActiveX, которые уже внесены в реестр операционной системы Windows.

Мы видим, что управляющий элемент календаря ActiveX уже зарегистрирован в системе и делать ничего не нужно. Но если бы это было не так, то нужно было бы щелкнуть по кнопке Register..., в стандартном окне открытия файлов найти регистрируемый элемент управления ActiveX и щелкнуть по кнопке Open.
Щелкните по кнопке Close, затем закройте окно утилиты ActiveX Control Test ContainerВыполним визуальное проектирование диалогового окна, которое будет главным окном приложения.
В панели Resource View раскройте узел Dialog. Удерживая клавишу Shift или Ctrl, выделите оба ресурса и через панель Properties русифицируйте их одновременно
В панели Resource View выделите ресурс IDD_MYCAL_DIALOG и через контекстное меню выполните команду Open
В открывшемся окне дизайнера диалоговых окон отредактируйте главное диалоговое окно, удалив из него все кнопки и статический текст, сгенерированные по умолчаниюПоместить управляющий элемент - календарь на форму диалогового окна можно двумя способами
Toolbox оболочки. В этом случае элемент будет размещен постоянно в панели Toolbox При реализации первого способа...
Откройте вкладку Dialog Editor панели Toolbox и вызовите для нее контекстное меню. Выполните команду Add/Remove Items...

Откроется диалоговое окно Customize Toolbox

Выберите вкладку COM Components и в списке всех зарегистрированных в системе компонентов ActiveX включите нужный компонент календаря. Нажмите кнопку OK и убедитесь, что этот компонент разместился в панели Toolbox. Теперь он будет присутствовать в оболочке постоянно для любого проекта, пока его вновь не удалить таким же способомПри реализации второго способа...
Для одноразового размещения нужного компонента в диалоговой панели следует выполнить следующее:
Щелкните на открытом ресурсе диалогового окна правой кнопкой мыши и выполните команду
В появившемся диалоговом окне из списка зарегистрированных в системе элементов управления выберите нужный ActiveX

и щелкните по кнопке OK.
В проектируемое диалоговое окно приложения будет помещен управляющий элемент календаря.
После подключения к проекту ActiveX продолжим проектирование приложения.
Поместите на диалоговый ресурс две кнопки Button
Отредактируйте свойства управляющих элементов главного диалогового окна в соответствии с таблицей
| Свойства элементов управления диалогового окна | ||
|---|---|---|
| Объект | Свойство | Значение |
| Диалоговое окно | ID |
IDD_MYCAL_DIALOG |
Caption |
Калькулятор | |
| Календарь | ID |
IDC_CALENDAR |
BackColor |
ActiveCaptionText |
|
| Кнопка левая | ID |
IDC_TODAY_BUTTON |
Caption |
Today |
|
| Кнопка правая | ID |
IDC_EXIT_BUTTON |
Caption |
Exit |
|
Мы хотим добавить два обработчика для кнопок и одну переменную-экземпляр класса календаря для управления им.
В панели
Через контекстное меню или главное меню оболочки Project вызовите мастер добавления переменной, который заполните так

Мастер сгенерирует соответствующий код. Обратите внимание, что мы указали мастеру разместить код самого калькулятора в отдельных файлах Calendar.h и Calendar.cpp.
В файле MyCalDlg.cpp найдите функцию OnInitDialog() и разместите код установки календаря на текущую дату
Код в функции CMyCalDlg::OnInitDialog()
BOOL CMyCalDlg::OnInitDialog()
{
................................................
// TODO: Add extra initialization here
// Установка календаря на текущую дату
m_Calendar.Today();
return TRUE;
Создайте обработчик кнопки Today и поместите туда такой же кодКод обработчика кнопки Today
void CMyCalDlg::OnBnClickedTodayButton()
{
// TODO: Add your control notification handler code here
// Установка календаря на текущую дату
m_Calendar.Today();
}
Создайте обработчик кнопки Exit и поместите туда код завершения приложенияКод обработчика кнопки Exit
void CMyCalDlg::OnBnClickedExitButton()
{
// TODO: Add your control notification handler code here
OnOK();
}
Смените иконку приложения
Оформите диалоговое окно About
Постройте приложение и убедитесь в его работоспособностиГлавное окно приложения должно иметь примерно такой вид

Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.