Регистрация | Последние сообщения | Персональный список | Поиск | Настройка конференции | Личные данные | Правила конференции | Список участников | Top 64 | Статистика раздела | faq | Что нового v.2.3 | Чат
Skunk Forum - Техника, Наука, Общество » АСУТП »
Wonderware Intouch - как обратиться к глубоким полям ActiveX

Версия для печати (настроить)

Новая тема | Написать ответ

Подписаться

Автор Тема:   Wonderware Intouch - как обратиться к глубоким полям ActiveX
ColdFire
Member

Сообщений: 259
Откуда: Россия
Регистрация: Ноябрь 2004

написано 30 Августа 2007 12:19ИнфоПравкаОтветитьIP

Всем привет ! Собственно, проблема. Надо вытянуть глубокие поля в импортированном объекте ActiveX.
Поля запрятаны внутрь коллекции - то есть по идее имеем #MyObject1.List.Items(N).SomeField.

Надо обратиться к SomeField. Не дает зараза, ругается на то, что после точки, что после Items(N), должна быть цифра.
Если делать:
dim temp;
temp = #MyObject1.List.Items(N);
... temp.SomeField - опять то же самое; ругается на точку. Если поставить #temp, то тоже ессно не проходит,
т.к. он хочет явное имя объекта.

Какие мысли имеются у уважаемых ?

Добавление от 30 Августа 2007 13:05:

Тьфу, dim конечно же неправильный, но альтернативных вариантов все равно не вижу...

Constantin
Junior Member

Сообщений: 12
Регистрация: Июль 2007

написано 30 Августа 2007 14:16ИнфоПравкаОтветитьIP

MyObject1.List[Items(N)].SomeField

может что то типа того?

ColdFire
Member

Сообщений: 260
Откуда: Россия
Регистрация: Ноябрь 2004

написано 31 Августа 2007 15:10ИнфоПравкаОтветитьIP

Нет, это совсем не то. Items - это поле List.

ColdFire
Member

Сообщений: 262
Откуда: Россия
Регистрация: Ноябрь 2004

написано 04 Сентября 2007 09:24ИнфоПравкаОтветитьIP

Ну что, неужели никто не сталкивался ?

Efiop
Junior Member

Сообщений: 29
Откуда: РК
Регистрация: Апрель 2006

написано 04 Сентября 2007 13:03ИнфоПравкаОтветитьIP

ColdFire
Компонент можешь скинуть?
И ещё, зайди в меню Insert>ActiveX... в ActiveX Control Browser'е посмотри в пропертях есть такой метод.

ColdFire
Member

Сообщений: 263
Откуда: Россия
Регистрация: Ноябрь 2004

написано 04 Сентября 2007 13:39ИнфоПравкаОтветитьIP

цитата:
Efiop писал:
Компонент можешь скинуть?
И ещё, зайди в меню Insert>ActiveX... в ActiveX Control Browser'е посмотри в пропертях есть такой метод.

А чего его скидывать - он штатно с Windows стоит. Называется ListControl, wrapper поверх обычного ListView.
Проблема не в том, что контрол не виден - он отлично вставлен и кладется на мнемосхему. Проблема в том, что интач
штатно видит только первый уровень вложений в ActiveX. То есть в свойствах видно только ListItems, а вложенные свойства этого самого ListItems уже не видно. Вопрос в том, как к ним обратиться - они ведь есть.

Efiop
Junior Member

Сообщений: 30
Откуда: РК
Регистрация: Апрель 2006

написано 04 Сентября 2007 15:29ИнфоПравкаОтветитьIP

ColdFireА каким образом ты туда записи добавляешь?

ColdFire
Member

Сообщений: 264
Откуда: Россия
Регистрация: Ноябрь 2004

написано 04 Сентября 2007 15:38ИнфоПравкаОтветитьIP

Для добавления есть функция без индексов - ListControl1.ListItems.Add(...);
Она отрабатывает нормально. А выпендриваться интач начинает на индексированные свойства

Efiop
Member

Сообщений: 33
Откуда: РК
Регистрация: Апрель 2006

написано 05 Сентября 2007 15:12ИнфоПравкаОтветитьIP

ColdFire, чё-то у меня только по селекту получилось запись вытащить, хрень какая-то, интересно версия ИнТача влияет на это? А листбокс обычный не канает?

ColdFire
Member

Сообщений: 266
Откуда: Россия
Регистрация: Ноябрь 2004

написано 06 Сентября 2007 20:23ИнфоПравкаОтветитьIP

Если бы подходило это уродство, наверное бы не стали искать других путей. К сожалению, на тачскриновый дисплей впихнуть несколько сотен вариантов выбора в один столбец не канает, оператор потом будет уродоваться. И нестандартные ActiveX тоже не подходят по требованию заказчика - написали бы за 5 минут все что нужно на том же Delphi.

В смысле - что за Select ?

P.S. Вот блин, нашел - есть слава богу SelectedItem, чего-то я его сразу не заметил. Через него сделаем что нужно.
Но вопрос все равно остается открытым - как в [нецензурное слово] интаче обратиться к индексированным свойствам ?!

Efiop
Member

Сообщений: 34
Откуда: РК
Регистрация: Апрель 2006

написано 07 Сентября 2007 12:07ИнфоПравкаОтветитьIP

ColdFire
Ты, я посматрю уже на Вондерверовском форуме такой вопрос задавал, если они затрудняются ответить, то может стоит забугор написать.

ColdFire
Member

Сообщений: 267
Откуда: Россия
Регистрация: Ноябрь 2004

написано 07 Сентября 2007 17:42ИнфоПравкаОтветитьIP

Там тоже народ с двадцать-пятого раза понял чего нужно. Конечный ответ был - хрен, нельзя никак, интач с массивами вообще не умеет никак работать. Сейчас еще жду ответа от Клинкмана, они американцев запросили. Говорят вроде был какой-то вариант, только про нигде никто не пишет.

Я по поводу интача уже даже не разочаровываюсь...

Ваш ответ:

Коды форума
Смайлики


Ник:    Пароль       
Отключить смайлики

Все время MSK

Склеить | Разбить | Закрыть | Переместить | Удалить

Новая тема | Написать ответ
Последние сообщения         
Перейти к:

Свяжитесь с нами | skunksworks.net

Copyright © skunksworks.net, 2000-2018

Разработка и техническая поддержка: skunksworks.net


Рейтинг@Mail.ru Яндекс.Метрика