C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Урок 5. Добавляем метод / ActiveX / Приложение

Visual C++. ActiveX
Урок 5. Добавляем метод

В этом уроке мы с вами посмотрим, как к элементу ActiveX можно добавить метод. Наш метод будет очень простой - при его вызове будет раздаваться звуковой сигнал.

Вызываем ClassWizard (Ctrl+W), переходим в нем на вкладку Automation. В правой части ClassWizard'а нажимаем на кнопку Add Method. Появится диалоговое окно Add Method. Заполните его поля как на нашем рисунке:

Окно Add Method

Назначение этих полей следующее: поле External name - это внешнее имя нашего метода. Поле Internal name - его внутреннее имя. (У нас значения для этих двух полей равны beep). Return type - это, разумеется, тип возвращаемого процедурой значения. Мы ставим его как void - наш метод ничего не возвращает.

Давайте слегка усложним наш метод (а то больно он получается простым), а именно добавим к нему параметр. Для этого в нижней части диалога Add Method в Parameter list добавляем параметр nBeeps типа short:

Добавление параметра

Этот параметр будет отвечать за продолжительность звукового сигнала.

Нажимаем OK для закрытия окна Add Method и еще раз OK для закрытия ClassWizard'а. Обратите внимание на изменения на вкладке ClassView. В интерфейсе появился метод beep:

Метод в интерфейсе

И в классе CFirstClassCtrl появился метод класса beep:

Метод в классе

Щелкаем на нем для перехода в окно кода. Вносим вледующие изменения в сгенерированную заготовку для кода:

void CFirstAXCtrl::beep(short nBeeps) 
{
    // TODO: Add your dispatch handler code here
    for(int i=0;i<nBeeps;i++){
        MessageBeep(-1);
        Sleep(1000); //Делаем задержку на 1 секунду
    }
}

Таким образом мы добавили в наш ActiveX-элемент метод.