Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
26.11.2021, 12:23
|
|||
---|---|---|---|
|
|||
Индексированные свойства в OLE объектах |
|||
#18+
Приветствую, коллеги! Подскажите пожалуйста, верно ли я понимаю, что тип свойства "Read | Write | Write By Ref" должен позволять настроить индексированное свойство а-ля TString.Items[] ? Когда добавляется свойство такого вида, в дизайнере появляется сразу 3 свойства: "Read Only", "Write Only", "Read | Write", но с имплементацией какая-то беда. По идее для того же Items[] нужно сделать как-то так: read property: Index: long [in] Value: BSTR* [out,retval] write property: Index: long [in] Value: BSTR* [in] read/write property: Index: long [in] Value: BSTR* [in,out] Но когда в дизайнере настраиваешь write property она дублирует свои настройки на read/write и наоборот. Как-то так. Вот и вопрос: а можно ли вообще добиться индексированного свойства в делфовом OLE объекте, или тип "Read | Write | Write By Ref" предназначен для чего-то иного? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.11.2021, 12:59
|
|||
---|---|---|---|
|
|||
Индексированные свойства в OLE объектах |
|||
#18+
Я делфевый редактор давно запросил, потому какие кнопки нажимать не скажу. В idl должно получится так Код: plaintext 1. 2. 3. 4.
Тип первого параметра может быть любым. По нему и будет индекс. Более того, этих параметров может быть несколько, тогда индекс будет составной. В _TLB.pas получатся такие строки Код: pascal 1. 2. 3.
И в реализации нужно будет реализовать два метода Get_Items и Set_Items. Чтобы свойство было default, т.е. можно было обращаться как Код: pascal 1.
нужно этому свойству установить dispid = 0 Код: plaintext 1. 2. 3. 4.
По идее, в редакторе ван нужно добавить одно Read | Write свойство ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=58&tablet=1&tid=2036833]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 245ms |
total: | 406ms |
0 / 0 |