Модераторы: SoWa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обмен данными с внешней программой, написаной на Delphi. Как? 
:(
    Опции темы
Bitter
Дата 8.10.2009, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный лентяй
***


Профиль
Группа: Завсегдатай
Сообщений: 1209
Регистрация: 15.8.2004
Где: Харьков, Ukraine

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



Привет. Я пишу программу на Delphi, а другой программист пишет на флеше 3. Задача такая: я расчитываю матрицу значений, после чего должен передать эту матрицу его проге, а он её обработает уже по своему.

Я первый раз с таким сталкиваюсь, по этому вопрос: какие есть возможности для этого у 3-го флеша, и как это лучше всего сделать? (вариант "написать всё на одном языке" не годится)
PM MAIL ICQ Skype   Вверх
SoWa
Дата 8.10.2009, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Харекришна
****


Профиль
Группа: Комодератор
Сообщений: 2422
Регистрация: 18.10.2004

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



Вот пример взаимодействия флеша и JavaScript. Может быть натолкнет на мысли


--------------------
Всем добра smile
PM MAIL ICQ   Вверх
Bitter
Дата 8.10.2009, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный лентяй
***


Профиль
Группа: Завсегдатай
Сообщений: 1209
Регистрация: 15.8.2004
Где: Харьков, Ukraine

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



Спасибо, буду разбираться
PM MAIL ICQ Skype   Вверх
Graf_h
Дата 11.10.2009, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Bitter, могу скинуть пример на делфи. С этим сталкивался не раз. 


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
SoWa
Дата 12.10.2009, 11:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Харекришна
****


Профиль
Группа: Комодератор
Сообщений: 2422
Регистрация: 18.10.2004

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



и мне тоже можно? sowa(собака)vingrad.ru


--------------------
Всем добра smile
PM MAIL ICQ   Вверх
Graf_h
Дата 12.10.2009, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Лудше напишу здесь, может еще кому то пригодитсяsmile
Все достаточно просто. 

Во флешке пишем

Код

ExternalInterface.addCallback("call",_call)
...
private function _call(arg:String):void{

}


В функцию _call можно передавать не только стринг, но мне так удобно (склеить все данные в строку,а в флеше парсить не составляет проблем).

в делфи(да й не только в делфи) пишем invoke метод:

Код

var
package:String;

form1.FlashPlayerControl1.CallFunction('<invoke name="call"><arguments><string>'+package+'</string></arguments></invoke>');


Вот и все. 

Для АС2 можно воспользоватся функцией setVariable, а в флеше на переменую подключить watch метод, который отслеживает изменение перемоной, то есть, по сути выдает событие.




--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
SoWa
Дата 12.10.2009, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Харекришна
****


Профиль
Группа: Комодератор
Сообщений: 2422
Регистрация: 18.10.2004

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



Спасибо! Вечером потыкаюсь.

Такие орг. вопросы возникли:
<invoke name="call"><arguments><string>'+package+'</string></arguments></invoke> - как эту конструкцию можно вызвать еще? Например, из браузера можно?
Потому что Дельфи я уже года 4 как не использую...

Цитата(Graf_h @  12.10.2009,  14:12 Найти цитируемый пост)
ExternalInterface.addCallback("call",_call)...private function _call(arg:String):void{}

Во флексе работать будет?


--------------------
Всем добра smile
PM MAIL ICQ   Вверх
Graf_h
Дата 12.10.2009, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



SoWa, какая разница где использовать ActiveX?
Цитата(SoWa @  12.10.2009,  14:39 Найти цитируемый пост)
Во флексе работать будет? 

Конечно будет.


Вот пример для Яваскрипта(взят из хелпа):

Код

<script language="JavaScript">
     var jsReady = false;
     function isReady() {
         return jsReady;
     }
     function pageInit() {
         jsReady = true;
         document.forms["form1"].output.value += "\n" + "JavaScript is ready.\n";
     }
     function thisMovie(movieName) {
         if (navigator.appName.indexOf("Microsoft") != -1) {
             return window[movieName];
         } else {
             return document[movieName];
         }
     }
     function sendToActionScript(value) {
         thisMovie("ExternalInterfaceExample").sendToActionScript(value);
     }
     function sendToJavaScript(value) {
         document.forms["form1"].output.value += "ActionScript says: " + value + "\n";
     }
 </script>



Это сообщение отредактировал(а) Graf_h - 12.10.2009, 14:56


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | ActionScript 3 | Следующая тема »


 




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


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

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