На этом шаге мы рассмотрим алгоритм добавления метода.
Сейчас мы создадим в интерфейсе своего элемента управления метод Рlау().
- Добавление метода Рlау().
- В ClassView щелкните правой кнопкой мыши интерфейс IATLBandit и в открывшемся
меню выберите Add Method. - В диалоговом окне Add Method to Interface в поле Method Name введите имя метода Play.
Рис.1. Добавление метода - Щелкните OK, чтобы завершить создание метода.
- Реализация метода Рlау().
- Как и при реализации MFC-элемента OneArmedBandit, добавьте в класс CATLBandit
следующую защищенную переменную-член :TCHAR m_symbols[3];
В конструктор CATLBandit добавьте следующую строчку инициализации строки символов:
_tcscpy(m_symbols, _T("JJJ"));
- В ClassView раскройте узел интерфейса IATLBandit в классе CATLBandit.
- Чтобы начать редактировать тело функции CATLBandit::Play(), дважды щелкните метод Рlау() в интерфейсе IATLBandit.
- Добавьте в тело CATLBandit::Play() следующий код:
STDMETHODIMP CATLBandit::Play() { srand( (unsigned)time( NULL ) ); _tcscpy( m_symbols, _T("JJJ") ); for( int i = 0; i < 3; i++ ) m_symbols[ i ] += UINT(rand() % m_numberOfSymbols); // перерисовка элемента управления m_spInPlaceSite->InvalidateRect( NULL, TRUE ) ; if( m_symbols[ 0 ] == m_symbols[ 1 ] && m_symbols[ 1 ] == m_symbols[ 2 ] ) Fire_Jackpot(); return S_OK; }
Рис.2. Текст функции Play() - В начало файла ATLBandit.cpp вставьте следующую строку:
#include <time.h>
Текст приложения можно взять здесь (35,3 Кб).
На следующем шаге мы рассмотрим создание страницы свойств.