Вывод при компиляции
Re: Вывод при компиляции
dr1emaver
Надо вызывать следующую функцию только после завершения другой. И data будет содержать разные значения. Нельзя тупым копированием кода написать хорошее приложение.
Надо вызывать следующую функцию только после завершения другой. И data будет содержать разные значения. Нельзя тупым копированием кода написать хорошее приложение.
Re: Вывод при компиляции
Спасибо! Тут небольшой вопросик появился...Предположим есть 2 кнопки. При нажатии первой вызывается функция отображения аватара, а при нажатии второй - текст. Но если нажать вначале первую, а потом вторую, то аватар никуда не денется,а останется на том же месте ( залезет на текст, вызываемый второй кнопкой.)Я так понял, что вызываемое событие само не закроется, поэтому его надо как то заканчивать. Подскажите пожалуйста на примере..Мне так легче будет разобраться.Очень сильно поможете.
помогите пожалуйста на этом примере. Буду премного благодарен.
Код: Выделить всё
private function profiles (e:Event) //вызывается по нажатию кнопки { // выводим аватарку пользователя photoLoader.x=0; photoLoader.y=175; addChild(photoLoader); }
Re: Вывод при компиляции
ужс... что значит закроется событие? Событие произошло, слушатель выполнил предписанные действия и все. Если хочешь удалить аватар тоdr1emaver писал(а):Я так понял, что вызываемое событие само не закроется, поэтому его надо как то заканчивать
Код: Выделить всё
removeChild(photoLoader);photoLoader = null;
Re: Вывод при компиляции
Получается, что этот код мне придется вызывать в каждой функции?bodnar писал(а):ужс... что значит закроется событие? Событие произошло, слушатель выполнил предписанные действия и все. Если хочешь удалить аватар тоdr1emaver писал(а):Я так понял, что вызываемое событие само не закроется, поэтому его надо как то заканчиватьКод: Выделить всё
removeChild(photoLoader);photoLoader = null;
Re: Вывод при компиляции
зачем? случилось событие, выполнился какой то код, произошли изменения, в частности добавился аватар. Когда эти изменения больше не нужны (а это чаще всего бывает когда случается какое то другое событие) аватар можно удалить. Если событий после которых аватар не нужен несколько то да, во всех методах надо проверять есть ли аватар, и если есть то его удалять.
Re: Вывод при компиляции
Еще возник вопросик,из базы данных возвращается имя и булевое значение ( в котором 1 = true,0 =false) и все это возвращается одной строкой.
Так вот создается небольшая табличка (DataGrid ) в которой есть имя новости, буленовское значение (1 или 0).В зависимости от значения в строке bool происходит действие. Если он 0 то вызываем функцию двойным кликом, а если 1 то просто пишем "Новость добавлена ".Но проблема в том, что в базе довольно много записей, а таким условием можем проверить только 1 строку, но никак не остальные.Возможно ли как нибудь это обойти? Чтобы кликая на кнопку "ок" в строке, где буленовское значение равно 0 вызывалась функция, а где 1 там просто выводило сообщение. В php эти переменные выводятся так : $name.":".$bool."_";
Код: Выделить всё
var b; var h=e.target.data; h=h.split("_"); for (var i = 0; i < (h.length-1); i++) { b=h[i].split(":"); dp.addItem({Name:b[0], bool:b[1], ok: "Ок"});//Добавляет элемент в конец списка элементов. } list.x=0; list.y=215; list.resizableColumns=false; list.setSize(800,600); list.columns=["Name","bool","ok"]; list.getColumnAt(2).width=7; list.getColumnAt(1).width=21; list.getColumnAt(0).width=17; list.dataProvider=dp; if (b[1] == 0) { list.doubleClickEnabled=true; list.addEventListener(ListEvent.ITEM_CLICK,news); } else { if (b[1] == 1) { test2.x=300; test2.y=600; test2.width=700; test2.height=100; test2.text = Новость уже добавлена"; scene.addChild(test2); } }scene.addChild(list);
Re: Вывод при компиляции
dr1emaver
Используй автоформат кода в Adobe Flash!
Используй автоформат кода в Adobe Flash!
Цикл в нужном месте поможет это реализовать.dr1emaver писал(а):Но проблема в том, что в базе довольно много записей, а таким условием можем проверить только 1 строку, но никак не остальные.
Подумай, не будет ли лучше передавать данные в формате json или xml. http://flapps.ru/forum/topic3061.htmldr1emaver писал(а):В php эти переменные выводятся так : $name.":".$bool."_";
Re: Вывод при компиляции
я понимаю что цикл должен быть перед условием, но так как тут bool представлен как b[1], то если поставить цикл перед условием на проверку bool'a (цикл вида i=0;i<n( количество строк в таблице = количеству имен новостей),i++), то она n раз проверит первую строку. Если бы b[1] был b[1], где i- номер строки в таблице, то проблемы бы не было...Александр писал(а):dr1emaver
Используй автоформат кода в Adobe Flash!
Цикл в нужном месте поможет это реализовать.dr1emaver писал(а):Но проблема в том, что в базе довольно много записей, а таким условием можем проверить только 1 строку, но никак не остальные.
Подумай, не будет ли лучше передавать данные в формате json или xml. http://flapps.ru/forum/topic3061.htmldr1emaver писал(а):В php эти переменные выводятся так : $name.":".$bool."_";
Re: Вывод при компиляции
Что ты там мозга шатаешь, этот кусок кода есть в любом учебнике:
Код: Выделить всё
$q = "SELECT * FROM `DataGrid`";$r = mysql_query($q) or die(mysql_error());for ($i=0; $i<mysql_num_rows($r); i++){ $a = mysql_fetch_array($r, MYSQL_NUM); echo($a[1]);}
Re: Вывод при компиляции
bodnar,спасибо, но это надо решить на уровне action..
Проверил условие, вроде работает правильно, но почему то когда стоит bool=1 все равно при нажатии count увеличивается ( чего не должно быть)... По умолчанию bool=0, поэтому при нажатии на ок count увеличивается на 1 и bool становится равным 1. Но сейчас к сожалению и при bool =1 и при bool =0 можно нажимать сколько угодно - count будет увеличиваться на 1. Но когда bool=0 и нажмем он переведется в bool=1. Это работает.А вот чтобы count не увеличивался при bool=1 это не работает.
В php код
Код: Выделить всё
var b;var h = e.target.data;h = h.split("_");for (var i = 0; i < h.length - 1; i++){ b = h[i].split(":"); dp.addItem({Name:b[0],bool:b[1],count:b[2],ok:"Ок"});//Добавляет элемент в конец списка элементов.} list.x = 0;list.y = 215;list.resizableColumns = false;list.setSize(800,600);list.columns = ["Name","bool","count","ok"];list.getColumnAt(3).width = 10;list.getColumnAt(2).width = 7;list.getColumnAt(1).width = 21;list.getColumnAt(0).width = 17;list.dataProvider = dp;if (b[1] == 0){ list.doubleClickEnabled = true; list.addEventListener(ListEvent.ITEM_CLICK,news);}if (b[1] == 1){ test2.x = 300; test2.y = 600; test2.width = 700; test2.height = 100; test2.text = "Новость уже добавлена"; scene.addChild(test2); }scene.addChild(list);
В php код
Код: Выделить всё
while ($row = mysql_fetch_array($result)) { echo $name.":".$bool.":".$count."_"; }