Поиск:

Ответ в темуСоздание новой темы Создание опроса
> View состоящий из одной ActiveX компоненты, Как такое реализовать? 
:(
    Опции темы
Nuzur
Дата 5.9.2006, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

Репутация: 3
Всего: 5




Доброго времени суток.
Сабж. У меня есть компонента типа диаграммы TeeChart нужно что бы View из нее родной только и состоял. Тоесть пользователь открывает View а там диаграмма и все.


--------------------
Never again...
PM MAIL   Вверх
Dart
Дата 6.9.2006, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 26.6.2006
Где: Саратов, РФ

Репутация: 2
Всего: 2



Создай его как child и всё.
Только лучше пользоваться CScrollView, если хочешь, чтобы был скроллинг корректный
И пробеги по сообщениям, наверняка тебе OnDraw и иже с ними будут не нужны.
И в OnSize и OnMove надо засунуть принудительное изменение размеров и положения окна примерно так:
Код

CRect rect;
GetClientRect(rect);
m_Control->MoveWindow(rect);

--------------------
ЦитатаЛюблю смотреть, как другие работают
 Дж. К. ДжеромСайт: www.ecosigma.ruПочта: [email protected] 
PM MAIL WWW ICQ   Вверх
Nuzur
Дата 6.9.2006, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

Репутация: 3
Всего: 5




Цитата

Создай его как child и всё 


Можно поподробнее.


--------------------
Never again...
PM MAIL   Вверх
Dart
Дата 10.9.2006, 20:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 26.6.2006
Где: Саратов, РФ

Репутация: 2
Всего: 2



Суть в чем:
Создаешь вид без документа:
Код

    CCreateContext Context;
    Context.m_pCurrentDoc     = NULL;
    Context.m_pCurrentFrame   = NULL;
    Context.m_pLastView       = NULL;
    Context.m_pNewDocTemplate = NULL;
    Context.m_pNewViewClass   = RUNTIME_CLASS(CYourView);
    CRuntimeClass *pruntime_class = RUNTIME_CLASS(CMDIChildWnd);
    CMDIChildWnd *pdoc_param_frame = (CMDIChildWnd*) pruntime_class->CreateObject();
    if (!pdoc_param_frame)
        return NULL;
    if (pdoc_param_frame->LoadFrame(nIDResource, WS_CHILD | WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE, 
        NULL, &Context))
    {
        pdoc_param_frame->InitialUpdateFrame(NULL, TRUE);
        return pdoc_param_frame;
    }

В OnInitialUpdate вида создаешь что хошь (ActiveX, например)
В OnActivateFrame вида рекомендую прописать SetTitle, чтобы твой вид был поименован.

Ну, или 2-й вариант - честно сгенери визардом CView с ActiveX поддержкой.
Размести на виде свой контейнер и пользуйся. (Только это гораздо муторнее)
--------------------
ЦитатаЛюблю смотреть, как другие работают
 Дж. К. ДжеромСайт: www.ecosigma.ruПочта: [email protected] 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0412 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.