Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как вставить MFC-диалог в ActiveX компонент ? HELP 
:(
    Опции темы
ivan711
Дата 17.3.2006, 09:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 17.3.2006

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



Что требуется - создать HTML-страницу и разместить на ней элемент ActiveX, представляющий собой модальный диалог. Сделать это надо с помощью MFC или ATL (платформа - VS.Net 2003).
Что делалось
1) С помощью MFC создавал компонент, добавлял в него диалог, при вызове компонента делал диалог модальным (DoModal) - диалог выводится, но на нажатия кнопок, ввод не реагирует. Как заставить реагировать smile ?
2) С помощью ATL создавал проект, добавлял в него контрол и диалог.. Глупый вопрос - как теперь сделать этот диалог активым ?
Если кто-то сможет ответить на первый или второй вопрос - буду очень благодарен

PM MAIL   Вверх
chaos
Дата 17.3.2006, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


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

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



извеняюсь за грубость, но ты сам понял что сказал
Цитата

Что требуется - создать HTML-страницу и разместить на ней элемент ActiveX, представляющий собой модальный диалог.


на сколько я понимаю тебе надо создать ActiveX в каторой будет отображаться различные контролы: кнопочки, списки и тп.
Тебе надо создать ActiveX на базе визарда MFC ActiveX Control и потом в свойствах Control Settings, create control based on
выбрать элемент на катором будет все размещаться. Я обычно выбираю STATIC и все!!!

потом в обработчике события WM_CREATE добовляю (создаю) нужные мне контролы.
Один - - приходиться все элементы размещать на родителе вручную, те явное задание координат без всяких там CASE средств

PM WWW   Вверх
ivan711
Дата 18.3.2006, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 17.3.2006

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



Цитата(chaos @ 17.3.2006, 12:04)
извеняюсь за грубость, но ты сам понял что сказал
Цитата

Что требуется - создать HTML-страницу и разместить на ней элемент ActiveX, представляющий собой модальный диалог.


на сколько я понимаю тебе надо создать ActiveX в каторой будет отображаться различные контролы: кнопочки, списки и тп.
Тебе надо создать ActiveX на базе визарда MFC ActiveX Control и потом в свойствах Control Settings, create control based on
выбрать элемент на катором будет все размещаться. Я обычно выбираю STATIC и все!!!

потом в обработчике события WM_CREATE добовляю (создаю) нужные мне контролы.
Один - - приходиться все элементы размещать на родителе вручную, те явное задание координат без всяких там CASE средств

Один вопрос - как вручную создавать контролы (кнопки, поля ввода и т.д.) ? Как добавлять в них переменные ?
PM MAIL   Вверх
ivan711
Дата 19.3.2006, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 17.3.2006

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



"...потом в обработчике события WM_CREATE добовляю (создаю) нужные мне контролы..."
Для создания контролов нужно знать указатель (CWnd*) окна, в котором они создаются. Как узнать его в обработчике OnCreate ?
PM MAIL   Вверх
chaos
Дата 20.3.2006, 09:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


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

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



Цитата(ivan711 @ 19.3.2006, 19:27)
"...потом в обработчике события WM_CREATE добовляю (создаю) нужные мне контролы..."
Для создания контролов нужно знать указатель (CWnd*) окна, в котором они создаются. Как узнать его в обработчике OnCreate ?

"у ActiveX'ины полюбому есть m_hWnd"
Ты от чего начинаешь плясать? те какой контрол у тебя является родительским?
PM WWW   Вверх
ivan711
Дата 21.3.2006, 21:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 17.3.2006

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



Спасибо, разобрался немного! Кнопки и поля ввода работают, данными обмениваются. Только возникает еще вопрос. Когда я вывожу на экран компонент, он оказывается заданного заранее размера (100X50). Как этот предопределенный размер поменять?
PM MAIL   Вверх
chaos
Дата 23.3.2006, 14:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


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

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



смотря кто контейнер твоего компонента если IE то через JavaScript или VB
PM WWW   Вверх
ivan711
Дата 25.3.2006, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 17.3.2006

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



Цитата(chaos @ 23.3.2006, 14:28)
смотря кто контейнер твоего компонента если IE то через JavaScript или VB

Спасибо за совет, разобрался! Достаточно было в конструкторе вызвать SetInitialSize. Теперь возникает следующий вопрос - как из такого сделанного вручную диалога вызвать флешку (.swf) ?

PM MAIL   Вверх
SeregaLBN
Дата 7.4.2006, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата(ivan711 @ 25.3.2006, 23:31 Найти цитируемый пост)
как из такого сделанного вручную диалога вызвать флешку

А что ты под этим подразумеваешь?
Вызвать флэшку где?
- внутри твоего диалога как дополнительный контрол
- или на остальной часть HTML страницы
PM MAIL   Вверх
Buter-Brod
Дата 20.8.2007, 10:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 12.6.2007

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



2ivan711:

А как вы создавали контролы внутри диалога вашего?

Вообще, если можно, пример кода контрола в студию.
Просто я тоже пытаюсь разобраться ;)
Спасибо.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: COM/DCOM/ActiveX/ATL/CORBA | Следующая тема »


 




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


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

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