Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   FAQ (http://www.flasher.ru/forum/forumdisplay.php?f=86)
-   -   [Connect][Script]Как пользоваться LocalConnection? (http://www.flasher.ru/forum/showthread.php?t=66055)

ashDesigner 01.04.2004 05:00

[Connect][Script]Как пользоваться LocalConnection?
 
Кто-нибудь знает, как пользоваться Local Connection?
Почему-то возникают проблемы, когда клип-получатель начинает пересылать данные. А если загрузить клип-отправитель первым, то вообще ничего не работает. Как определить, что "соседний" клип загружен?

Nox Noctis 01.04.2004 10:43

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

в свф-источнике:
Код:

reciever = new LocalConnection();
reciever.get = function() {
        sender = new LocalConnection();
        sender.send("popup", "out", ...);
        this.close();
};
reciever.connect("main");

в свф-приёмнике:
Код:

reciever = new LocalConnection();
reciever.out = function(o) {
        //
        // ...
        //
        this.close();
};
reciever.connect("popup");
//
sender = new LocalConnection();
sender.send("main", "get");

таким образом, когда загрузился свф-приёмник, он вызывает в главном свфнике через локалконнекшн функцию, которая отправляет всё что нужно.

можно и проще, можно обойтись только вызовом функции в источнике - но вызывать всё равно нужно из приёмника только когда тот загрузится.

ashDesigner 01.04.2004 15:53

Спасибо! :))
 
Спасибо! :))

Я теперь понял, почему у меня глюки были. Дело в том, что у меня есть книга одна, якобы созданная разработчиками Flash. Там, конечно, много чего интересного - только вот по поводу LocalConnection они облажались, т.к. методы .send и .connect они решили использовать у одного и того же объекта:

Код:

lc=new LocalConnection;

lc.myMethod = function(){
  ////
  ////
}

lc.send('testConnection','receiverMethod');
lc.connect('testConnection');

- Вот у меня все и висло поэтому.

А вам спасибо! :))

Nox Noctis 01.04.2004 16:08

ну собсна можно и так :) ничего в этом криминального нет, но на грабли так наступить несомненно легче :)

надо помнить одно - одновременно может быть открыто на приём только одно соединение с данным именем.

lc.send('testConnection','receiverMethod');
lc.connect('testConnection');

то есть получается мы засылаем сообщение куда-то в соединение 'testConnection', и тут же то соединение отключаем, включая его относительно объекта lc.

получается что соединение 'testConnection' закрывается после первого же сообщения и открывается заново.

nicos 02.08.2004 19:55

а у меня ещё такой вопрос можно ли отправку делать не одному получателю а неограниченному количеству???

Dindin 03.08.2004 10:45

Всмысле? LocalConnection, который посылает данные на несколько окальных мувиков?

FreeLander 03.08.2004 17:06

Цитата:

Оригинал написал(а) nicos
а у меня ещё такой вопрос можно ли отправку делать не одному получателю а неограниченному количеству???
типа широковещательного сообщения не получается - надо для каждой пары соединение отдельное создавать:(

Dindin 03.08.2004 17:22

А SharedObject вам на что?

FreeLander 03.08.2004 22:33

Цитата:

Оригинал написал(а) Dindin
А SharedObject вам на что?
комплексное решение проблемы:)

Nirth 26.06.2005 00:16

Так же можно прочитать о LocalConnection на сайте макромедии
И посмотреть класс Евгения Потапенко


Часовой пояс GMT +4, время: 22:02.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.