![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2008
Сообщений: 7
|
Приветствую форумчан!
![]() Есть задача: замутить визуальный интерфейс в виде флешки, а вычислительные и другие механизмы разместить в коде Делфи. Как вставить Flash в Delphi я и так знаю: импорт АктивИкс, бла-бла-бла и так далее. Этой начальной инфой весь инет загажен. Меня лишь мучают вопросы о передачи данных между Флешкой и Программой содержащую ее(делфи форма т.е.). Метод Flash -> Delphi мне извесен - это fsCommand. А вот метод Delphi -> Flash мне не совсем ясен, а именно то как действуют SetVariable и GetVariable в ActionScript 3.0? Ну вот к примеру почитав это, пришел к выводу что можно делать вот так: В swf-ролике находится Dynamic Text с именем dtext. В делфи пытаюсь такое сделать На что мне при выполнении программы выдаются окна с матами и ругательствами. Вроде на вашем же форуме читал, что для всего этого лучше в AS3 использовать ExternalInterface, но везде примеры показаны для JS а как их реализовать в Delphi - не пойму smile Помогите пожалуйста, ребята, очень надо ----------------- Ответ найден: Спасибо за ссылочку Rzer ^_^ Привожу пример так, как сделал его я. Во флеш, в AS3, в рут классе пишем примерно такое: package { import flash.display.Sprite; import flash.external.ExternalInterface; public class MainClass extends Sprite { public function MainClass() { ExternalInterface.addCallback("getFromDelphi", getFromDelphi); ExternalInterface.call("sendToDelphi", "Delphi, Hello"); } public function getFromDelphi(val:String):void { dtext.text = val; // это в ролике у меня лежит Динамический текст с именем "dtext" } } } procedure TForm1.FormCreate(Sender: TObject);
begin
Flash.Movie:= ExtractFilePath(Application.ExeName)+'Untitled-1.swf';
end;
//***//
procedure TForm1.FlashFlashCall(ASender: TObject; const request: WideString);
begin
showmessage(request);
Flash.CallFunction('<invoke name="getFromDelphi"><arguments><string>Hi, Flash</string></arguments></invoke>');
end;
Цитата:
Последний раз редактировалось LameAS3; 07.12.2008 в 21:21. Причина: ответ найден |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 205
|
Поисчи в примерах от адоба, у них реализован сабжевый механизм, с помощью С# правда, но .NET он и в африке .NET
|
|
|||||
|
|
|
|||||
|
Регистрация: Nov 2008
Сообщений: 7
|
VovkaMorkovka1, а где эти примеры адобовские?
|
|
|||||
|
Регистрация: Nov 2008
Сообщений: 205
|
Ну раз примеры адобовские, то логично предположить, что находятся они на сайте адоба
www.adobe.com и далее поиск ![]() |
|
|||||
|
http://atflash.ru/2008/11/externalin...e-visualbasic/ для vb. Для дельфи думаю аналогично.
__________________
if (love is true) break my.heart; |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 7
|
VovkaMorkovka1
1) это ясень пень, что Адобовский примеры не на Майкрософт лежат =Р 2) уже нашел эти примеры)) Rzer изучаю документ.... Добавлено через 16 минут Rzer Большое тебе СПАСИБИЩЕ!! Это кАкраз то что я искал!!! Все работает! В первом топе опишу тоже самое, но в Delphi, чтобы такие же как я нашди решение для граблей своих |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 7
|
Так, теперь у меня есть маленький вопросик:
А как передать во Флэш-функцию несколько параметров? |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 205
|
опять - же кури примеры
|
|
|||||
|
Регистрация: Oct 2003
Сообщений: 4
|
Доброго времени суток.
перерыл всё что мог и никак не найду ответа на свой вопрос. в этой теме как бы он затронут, но применить к своему ничего не смог. сам вопрос. Есть какой-то swf файл (написан не мною и грузится на страничку), отображает какие-то данные. Пишу приложение на delphi в котором загружаю эту флешку и налажива обмен и управление swf файлом с моего приложения. ShockwaveFlash.SetVariable, ShockwaveFlash.GetVariable и т.п. работает отлично, но вот с функциями проблема. ShockwaveFlash.CallFunction - ни в какую.. не хочет работать. на все попытки выдает сообщение "Неопознанная ошибка". Поиски ответа привели меня максимум к подобным вопросам, на который были ответы "Ты наверное перерыл весь инет и ничего не нашел, а заставить работать так и не удалось?" Вот для наглядности код флешки. Есть какая-то функция Как передать параметер и вызвать эту функцию в делфе. по идее должно быть все с помощью ShockwaveFlash.CallFunction() других способов не вижу, может кто делал другим способом? |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:58. |
|
|
« Предыдущая тема | Следующая тема » |
| Теги |
| delphi , externalinterface |
|
|