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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Delphi и Flash, собственно Как и с Чем есть этот фрукт 
:(
    Опции темы
Perl_sapiens
Дата 6.12.2008, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 95
Регистрация: 19.2.2008

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



Приветствую форумчан! smile 

Есть задача: замутить визуальный интерфейс в виде флешки, а вычислительные и другие механизмы разместить в коде Делфи.
Как вставить Flash в Delphi я и так знаю: импорт  АктивИкс, бла-бла-бла и так далее. Этой начальной инфой весь инет загажен. Меня лишь мучают вопросы о передачи данных между Флешкой и Программой содержащую ее(делфи форма т.е.).
Метод Flash -> Delphi мне извесен - это fsCommand.
А вот метод Delphi -> Flash мне не совсем ясен, а именно то как действуют SetVariable и GetVariable в ActionScript 3.0? Ну вот к примеру почитав это. пришел к выводу что можно делать вот так:
В swf-ролике находится Dynamic Text с именем dtext. В кое делфи пытаюсь такое сделать
Код

Memo1.Text:=Flash.GetVariable('dtext.text');

На что мне при выполнении программы выдаются окна с матами и ругательствами.
Где то прочел, что для всего этого лучше в AS3 использовать ExternalInterface, но везде примеры показаны для JS а как их реализовать в Delphi - не пойму smile 

Помогите пожалуйста, ребята, очень надо
PM MAIL   Вверх
Perl_sapiens
  Дата 7.12.2008, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 95
Регистрация: 19.2.2008

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



Ответ найден:
Спасибо за ссылочку Rzer c flasher.ru ^_^
Привожу пример так, как сделал его я.

Во флеш, в 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"
        }        
    }    
}


На форму в Delphi кидаем Flash проигрываетль в виде ActiveX(я его обозвал просто Flash) и пишем такое:
Код

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;

При запуске программы мы увидим такое сообщение:
Цитата
<invoke name="sendToDelphi" returntype="xml"><arguments><string>Delphi, Hello</string></arguments></invoke>

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: ActiveX/СОМ/CORBA"

Rrader
Girder

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Delphi
  • Вопросы по SQL и вопросы по базам данных, не связанные с Delphi, задавать здесь

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема »


 




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


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

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