Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.05.2010, 15:50
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 1  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
По умолчанию загрузка картинки по ссылке из файла

Немагу загрузить картинку по загруженой ссылке из файла. Сперва гружу переменную ...

Код AS1/AS2:
var lv:LoadVars = new LoadVars();
lv.onLoad = function(success:Boolean) {
	if (success) {
		urlFon=(this.urlFon);
                      trace(urlFon);
          }
}
трейс показывает
Цитата:
Obloshka.jpg
тоесть название нужного файла загрузилось, ок всё отлично, затем пытаюсь грузить эту картинку ...

Код AS1/AS2:
mcLoader=new MovieClipLoader();
attachMovie("Fon","Fon",1);
clip=_root.Fon;
mcLoader.loadClip(urlFon, clip);
и трэйс выводит ошибку:
Цитата:
Error opening URL "file:///E|/Diploma%20Project/Obloshka.jpg

"
что ему ненравиться ?
если записать сразу название файла
Код AS1/AS2:
mcLoader.loadClip("Obloshka.jpg", clip);
то грузиться беспроблем
__________________
Дети не должны знать о своих родителях

Старый 10.05.2010, 15:57
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 2  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Для начала: из какого места кода вы пытаетесь загрузить картинку?
Это надо делать, когда уже определена переменная urlFon, то есть изнутри обработчика onLoad.
То есть попробуйте loadClip записать внутри него после получения значения переменной.
А все остальное (создание экземпляра MCL и прочее) можно оставить снаружи, это выполнится мгновенно, в отличие от загрузки url картинки.

То есть так:
Код AS1/AS2:
var lv:LoadVars = new LoadVars();
lv.onLoad = function(success:Boolean) {
    if (success) {
	urlFon = this.urlFon;
	loadImage(urlFon);
    }
};
lv.load(......);
 
.....
 
mcLoader = new MovieClipLoader();
attachMovie("Fon", "Fon", 1);
 
function loadImage (picurl:String) {
	mcLoader.loadClip(picurl, Fon);	
}
Не знаю, решит ли это конкретно вашу текущую проблему, однако делать нужно именно так в силу асинхронности работы кода AS.

PS. Если загрузку картинки больше нигде не надо использовать, можно обойтись без спец.функции, а записать строку загрузки прямо сразу внутри onLoad:
Код AS1/AS2:
mcLoader = new MovieClipLoader();
attachMovie("Fon", "Fon", 1);
 
var lv:LoadVars = new LoadVars();
lv.onLoad = function(success:Boolean) {
    if (success) {
	mcLoader.loadClip(this.urlFon, Fon);	
    }
};
lv.load(......);


Последний раз редактировалось mooncar; 10.05.2010 в 16:08.
Старый 10.05.2010, 16:27
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 3  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Вот весь код
Код AS1/AS2:
mcLoader = new MovieClipLoader();
attachMovie("Fon","Fon",1);
 
var lv:LoadVars = new LoadVars();
lv.onLoad = function(success:Boolean) {
	if (success) {
		//НАСТРОЙКА ПЕРЕМЕННЫХ
		ShapkaText=(this.ShapkaText);
		urlFon=(this.urlFon);
		loadImage(urlFon); // функция
 
	}
}
function loadImage (picurl:String) {
	trace(picurl);
	mcLoader.loadClip(picurl, Fon);	
}
lv.load('config.ini'); //Загрузка конфигураций
вывод трейса:
Цитата:
Obloshka.jpg


Error opening URL "file:///E|/Diploma%20Project/Obloshka.jpg

"
В нём видно, что загрузка картинки производиться после загрузки ссылки, но всёравно непашет. Если написать путь вручную без ссылки:
Код AS1/AS2:
function loadImage (picurl:String) {
	trace(picurl);
	mcLoader.loadClip("Obloshka.jpg", Fon);	
}
то картингка загрузиться.

Может както нужно указать, что picurl именно ссылка ?
И почему в трейсе кавычка на следующей строке ?

строение config.ini
Цитата:
&ShapkaText=Моя шарага
&urlFon=Obloshka.jpg
__________________
Дети не должны знать о своих родителях

Старый 10.05.2010, 16:32
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 4  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Верное написание config.ini будет таким:
Код:
&ShapkaText=Моя шарага&urlFon=Obloshka.jpg
Переносы строк недопустимы.
У вас url получается со вставленным переносом строки (точнее их получается два, так как флеш интерпретирует и возврат каретки тоже как новую строку), поэтому и кавычка там есть через строку.
Разумеется, по такому url загрузить флеш ничего не может.


Последний раз редактировалось mooncar; 10.05.2010 в 16:44.
Старый 10.05.2010, 16:35
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 5  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Ураа заработало !! терь всё ясно, долбанный невидимый символ, я знал что кавычка через строку в трейсе - жутко подозрительно.

спасибо
__________________
Дети не должны знать о своих родителях

Старый 10.05.2010, 17:00
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 6  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Пожалуйста.
PS. А зачем вы обрамляете правые части выражений в лишние скобки?
Не надо так делать. Не создавайте лишние сущности. Синтаксис AS этого не предусматривает.
Переносы строк - это тоже оказалось лишними сущностями.
Повышайте знание матчасти с помощью хелпа и учебников, это сэкономит вам время


Последний раз редактировалось mooncar; 10.05.2010 в 17:59.
Создать новую тему Ответ Часовой пояс GMT +4, время: 07:33.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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