Объект получился в предыдущем шаге. Но он выводит строку, которую нельзя менять. Для начала необходимо создать переменную, которая будет хранить строку. Хранятся переменные в классе C*Ctrl. У нас он CDMyActive1Ctrl.
Выбирайте ClassView наводите мышку на CDMyActive1Ctrl правую кнопку, далее Add Member Variable. И добавьте переменную типа CString с именем m_string, как публичную. После этого она появится в списке элементов класса. Два раза щелкните по ней. Должно быть так:
..... DECLARE_EVENT_MAP() // Dispatch and event IDs public: CString m_string; enum { //{{AFX_DISP_ID(CDMyActive1Ctrl) .....
Теперь её необходимо инициализировать. А единственное место где это можно сделать - это конструктор, так как функций подобных OnNewDocument() в данном случае нет.
CDMyActive1Ctrl::CDMyActive1Ctrl() { InitializeIIDs(&IID_DDMyActive1, &IID_DDMyActive1Events); m_string = "My ActiveX 2"; }
Ну, а теперь надо, чтобы строка выводилась на экран. Это в функции OnDraw(). Меняем её.
Компилируйте и вставляйте. В любой контейнер. Надпись поменяется.