X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> обработчик кнопки
Letmetouchyou
Letmetouchyou
Topic Starter сообщение 13.1.2010, 21:53; Ответить: Letmetouchyou
Сообщение #1


on(release) {
    loadVariables("http://gps/user/system/try.php", "_root");
    _root.onData=function():Void
    {
        varText+=one+' '+second+' ';
    }
}

вот например обработчки на кнопку.
varText -ето элемент созданный Text Tool;
после выполнения обработчика первая запись в элементе : undefined;
(поле изначально пустое) а потом значние элемнетов.

где в скрипте можно объяваиь переменную varText (если ето вапше перменная :) ) и задать её значние?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
сообщение 13.1.2010, 22:11; Ответить: MetSerp
Сообщение #2


если в коде то впринципе где угодно, но учитывая что это AS 2 то лучше в первом кадре
на всякий случай это значение лучше присобачить к _root чтобы везде видно было то есть [PHP]_root.varText = '';[/PHP] но могу ошибастья немного в синтаксисе так как уже давненько относительно сижу на ас 3 а там совсем иначе :nea:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
Topic Starter сообщение 14.1.2010, 10:13; Ответить: Letmetouchyou
Сообщение #3


MetSerp, а как такой же обработчик будет выглядеть в ас3?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
сообщение 14.1.2010, 11:43; Ответить: MetSerp
Сообщение #4


резко больше так как loadVariables более не является элементом языка вместо него появился класс URLLoader в пакете flash.net
и обработчики теперь добавляются вот так:
[PHP]object_name.addEventListener(EVENT,handler);[/PHP]
разумеется предварительно в пакет желательно импортировать пакеты флэша которые будут участвовать то есть в данном случае
[PHP]import flash.events;
import flash.net;[/PHP]
правда флэша у меня на работе нет, потому мог отпечататься потому приведу пример использования из официального мана
Пример

В следующем примере загружается XML-файл, а затем содержимое первых аргументов его элементов отображается в текстовом поле.
Для определения местоположения XML-файла создается объект URLRequest (например, он может находиться в том же каталоге, где и SWF-файл). Для того чтобы выявить возможные ошибки, файл загружается в блок try...catch. (Здесь выявляются ошибки SecurityError.) При возникновении события IO_ERROR вызывается метод errorHandler(), записывающий сообщение об ошибке в текстовом поле xmlTextField. После того как данные XML-файла получены и помещены в свойство данных URLLoader-объекта loader, отправляется событие Event.COMPLETE и вызывается метод loaderCompleteHandler().

В методе loaderCompleteHandler() блок try...catch используется для выявления любых ошибок анализа, которые могут возникнуть при преобразовании загруженных данных из файла в объект XML. Далее метод readNodes() рекурсивно обрабатывает все элементы в узлах XML-документа и добавляет текстовое поле xmlTextField со списком первых атрибутов всех элементов.


[PHP]package {
import flash.display.Sprite;
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.xml.*;
import flash.events.IOErrorEvent;

public class URLLoader_loadExample extends Sprite {
private var xmlTextField:TextField = new TextField();
private var externalXML:XML;
private var loader:URLLoader;

public function URLLoader_loadExample() {
var request:URLRequest = new URLRequest("xmlFile.xml");

loader = new URLLoader();

try {
loader.load(request);
}
catch (error:SecurityError)
{
trace("A SecurityError has occurred.");
}

loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
loader.addEventListener(Event.COMPLETE, loaderCompleteHandler);

xmlTextField.x = 10;
xmlTextField.y = 10;
xmlTextField.background = true;
xmlTextField.autoSize = TextFieldAutoSize.LEFT;

addChild(xmlTextField);
}

private function loaderCompleteHandler(event:Event):void {

try {
externalXML = new XML(loader.data);
readNodes(externalXML);
} catch (e:TypeError) {
trace("Could not parse the XML file.");
}
}

private function readNodes(node:XML):void {

for each (var element:XML in node.elements()) {
xmlTextField.appendText(element.attributes()[0] + "\n");

readNodes(element);
}
}

private function errorHandler(e:IOErrorEvent):void {
xmlTextField.text = "Had problem loading the XML File.";
}
}
}[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
Topic Starter сообщение 14.1.2010, 12:07; Ответить: Letmetouchyou
Сообщение #5


еше вопрос:
загрузка изображения у меня так происходит:
mapimg.loadImage = function(file)
{
    mapimg.maxWidth=750;
    mapimg.maxHeight=500;
    mapimg.image.removeMovieClip();
    mapimg.createEmptyMovieClip("image",0);
    mapimg.image.loadMovie(file);
     this.onEnterFrame = function()
     {
         var l = this.image.getBytesLoaded();
         var t = this.image.getBytesTotal();
         if (t>0 && l>=t) {
             delete this.onEnterFrame;
             this.resize();
         }
     };
};


и вызываеться скрипт так:
gotry.htmlText = "<a href='asfunction:loadImage,"+httppath+"map.jpg'>загрузить картинку 300х400</a>";
loadImage = function (file)
{
    _root.gohelp.htmlText = "грузим файл <u>"+file+"</u><br/>";
    _root.mapimg.loadImage(file);
};


как сделать чтобы загузку изображения на кнопку повесить?
делал так
on(release) {
loadImage = function (file)
{
    _root.gohelp.htmlText = "грузим файл <u>"+file+"</u><br/>";
    _root.mapimg.loadImage(file);
};
}

но не работает.

не могу пока понять "философию" флехи :)))

_______________________________________________
как я понял , одна из причини ето область видиости.
шас в первом фрейме изсенил так:
_root.mapimg.loadImage = function(file)
{
...
}

и так же через root вызываю в обработчике на кнопке. правильно?

остаеться еше вопрос как в обработчике передавать аргумент функции (file)?
работало оно когда я делал без кнопки:
gotry.htmlText = "<a href='asfunction:loadImage,"+httppath+"map.jpg'>загрузить картинку 300х400</a>

ето было в первом фрейме напиано.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
сообщение 14.1.2010, 12:14; Ответить: MetSerp
Сообщение #6


а ошибку случайно не возвращает никакую? :bannnada:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
Topic Starter сообщение 14.1.2010, 12:25; Ответить: Letmetouchyou
Сообщение #7


не ошибок не было )
шас вроде разобрался. просто никогда ранее с фдехой не работал ( хоят вру , чтото рисовал и писал когда был в 7 - 8 классе , помню тогда была flash 5 , а помто меня в онлайн игры затянуло :) )
шас нужно с етим все разобратся.

обработчик кнопки сделал так:
[PHP]on(release) {
var file = "http://gps/map.jpg";
_root.mapimg.loadImage(file);
_root.gohelp.htmlText = "грузим файл <u>"+file+"</u><br/>";


}[/PHP]
пока работает. шас ресайзы буду делать :)
еше вопрос оп теме:
создан на сцене мувиклип с тектом. как при нажати на кнопку его удалить?
Instance name его txt.
пробовал
_root.txt.removeMovieClip();
delete txt;
root.txt.removeMovieClip(txt);
root.removeMovieClip(txt);
removeMovieClip(txt);

все ето в обработчике на кнопку.

MetSerp, подскажи куда копнуть:
1)изображение будет ресайзиться, и нужно чтобы у него были граница, то есть если его увеличивать, границой являлось не само окно флеша, а другой обект ( грубо говоря DIV в которм лежит изображение :) )
2)при зажатой кнокпи мыши ( в флехе есть вроде такой обработчик ) изображение можно было перетягивать.( внутри етого DIV`а ) :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
сообщение 14.1.2010, 13:05; Ответить: MetSerp
Сообщение #8


(Letmetouchyou @ 14.1.2010, 14:25) *
1)изображение будет ресайзиться, и нужно чтобы у него были граница, то есть если его увеличивать, границой являлось не само окно флеша, а другой обект ( грубо говоря DIV в которм лежит изображение :) )

решение которое пришло в лоб и сразу это сравнивать ширину и высоту изображения с шириной и высотой нужного объекта и пока оно не больше или равно увеличивать

(Letmetouchyou @ 14.1.2010, 14:25) *
2)при зажатой кнокпи мыши ( в флехе есть вроде такой обработчик ) изображение можно было перетягивать.( внутри етого DIV`а ) :)

если я правильно понял речь идет о stratDrag и stopDrag
а вам надо отслеживать эти события и обрабатывать

(Letmetouchyou @ 14.1.2010, 14:25) *
еше вопрос оп теме:
создан на сцене мувиклип с тектом. как при нажати на кнопку его удалить?
Instance name его txt.
пробовал

Команда; удаляет экземпляр мувиклипа, созданного при помощи методов attachMovie или duplicateMovie объекта MovieClip или командой duplicateMovieClip. если он у вас был создан в редакторе то вы его так не удалите, как удалить созданный руками мувик я честно говоря не в курсе, но его можно просто вынести за пределы области видимости флэшки если это возможно либо вместо ручного создания создавать программно тогда и удалять можно будет программно
и еще, если вы планируете использовать флэш для онлайн игр то лучше используйте AS 3.0 там это оправданно для простенького банера с головой хватит второго он там даже удобнее будет.
Я сам игрушку браузерную с друщьями делаю и начал ее делать на втором АС но когда уперся через половину работы в то что ас 2 не умеет много того что мне нужно пришлось переделывать на ас 3
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
Topic Starter сообщение 14.1.2010, 13:32; Ответить: Letmetouchyou
Сообщение #9


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

хм, сделал так
[PHP]_root.attachMovie("TXT","gotxt");[/PHP]

никакой реакции.
где ошибка?
еше вопро: как создать програмно мувиклип и задать ему коорлдинтаы7
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
Topic Starter сообщение 14.1.2010, 14:57; Ответить: Letmetouchyou
Сообщение #10


(MetSerp @ 14.1.2010, 15:05) *
Цитата:




Сообщение от Letmetouchyou


1)изображение будет ресайзиться, и нужно чтобы у него были граница, то есть если его увеличивать, границой являлось не само окно флеша, а другой обект ( грубо говоря DIV в которм лежит изображение :) )


решение которое пришло в лоб и сразу это сравнивать ширину и высоту изображения с шириной и высотой нужного объекта и пока оно не больше или равно увеличивать


я можетогда не правильно выразился, все седлал через слой - маску )
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Как перенести правила переадресации из .htaccess в php обработчик nginx?
0 KrisGuseva 2097 28.12.2019, 7:33
автор: KrisGuseva
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыНадо поменять картинки кнопки и всё прочее.
Сделать круто, чтобы не стыдно за сайт
0 atavisma 2989 6.4.2017, 19:04
автор: atavisma
Открытая тема (нет новых ответов) Добавить к коду кнопки функцию Canvas
0 Anshag 5065 25.11.2015, 12:41
автор: -Anshag-
Открытая тема (нет новых ответов) DLE: нужно продублировать кнопки "скачать"
4 Вентилятор 2329 8.8.2015, 16:41
автор: Hamster69
Открытая тема (нет новых ответов) Пагинация, как добавить кнопки вперед и назад?
0 SlippingForest 5932 1.2.2015, 22:16
автор: -SlippingForest-


 



RSS Текстовая версия Сейчас: 20.4.2024, 4:40
Дизайн