Передача значений свойствам ActiveForm
От: Ranger  
Дата: 03.12.02 09:34
Оценка:
Создал ActiveForm, добавил несколько свойств

Разместил ее на html-странице,
...
<OBJECT
id="MyForm"
classid="clsid:A5B37685-F7EB-4C32-90B7-E8AA6AE3C73A">
...
<PARAM NAME="PropName1" VALUE="PropValue1">
<PARAM NAME="PropName2" VALUE="PropValue2">
</OBJECT>
...
Смотрю через IE 5.0, ActiveForm отображается и работает, но значения параметров ей не передались...

Пробовал делать это через JScript:
...
MyForm.PropName1 = PropValue1;
MyForm.PropName2 = PropValue2;
...
В этом случае все работает, но хотелось бы делать это через теги <PARAM>...
Re: Передача значений свойствам ActiveForm
От: Ivan Россия www.rsdn.ru
Дата: 03.12.02 09:42
Оценка:
Здравствуйте, Ranger, Вы писали:

R>В этом случае все работает, но хотелось бы делать это через теги <PARAM>...

Чтобы работало через <PARAM>, компонент должен реализовать интерфейс IPersistPropertyBag. Если нужна готовая реализация — поиск по groups.google.com — "ActiveForm IPersistPropertyBag"
Re: Передача значений свойствам ActiveForm
От: Tom Россия http://www.RSDN.ru
Дата: 03.12.02 10:28
Оценка:
Здравствуйте, Ranger, Вы писали:

R>Создал ActiveForm, добавил несколько свойств


R>Разместил ее на html-странице,

R>...
R><OBJECT
R> id="MyForm"
R> classid="clsid:A5B37685-F7EB-4C32-90B7-E8AA6AE3C73A">
R>...
R><PARAM NAME="PropName1" VALUE="PropValue1">
R><PARAM NAME="PropName2" VALUE="PropValue2">
R></OBJECT>
R>...
R>Смотрю через IE 5.0, ActiveForm отображается и работает, но значения параметров ей не передались...

R>Пробовал делать это через JScript:

R>...
R>MyForm.PropName1 = PropValue1;
R>MyForm.PropName2 = PropValue2;
R>...
R>В этом случае все работает, но хотелось бы делать это через теги <PARAM>...

Нужно вставить секцию BEGIN_PROP_MAP(class)/END_PROP_MAP() и в описание класса наследаваться от public IPersistPropertyBagImpl<CDownloader> естественно ещё нужно COM_INTERFACE_ENTRY(IPersistPropertyBag)
Народная мудрось
всем все никому ничего(с).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.