![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2008
Сообщений: 5
|
Подскажите пожалуйста как текстовое поле можно обратить в кнопку
с урл заданным в одном из детёенышей этого текста код: var newsXML:XML = new XML(); newsXML.ignoreWhite = true; var output:String = ""; newsXML.onLoad = function(success) { if (success) { var news:Array = newsXML.firstChild.childNodes; for(i=0;i<news.length;i++) { output += "<b>"; output += news[i].childNodes[0].firstChild.nodeValue; output += "</b> - <i>"; output += news[i].childNodes[1].firstChild.nodeValue; output += "</i>\n"; output += news[i].childNodes[2].firstChild.nodeValue; output += "\n\n"; } news_txt.htmlText = output; } else { news_txt.text = "XML file did not load."; } } newsXML.load("news4.xml"); в итоге должно получится кнопка с текстом состоящим из первых двух переменных и переходм при нажатии по адресу из третей переменной заранее спасибо |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 34
|
Ты создавай програмно муви клип(createMovieClip) и уже в этом клипе создавай текстовое поле(createTextField). Потом к клипу привязывай свойства onRelease, onPress...и подобные. Не понимаю в чём проблема...Ах да если у тебя много будет кнопок используй Eval() что бы взять ссылку на клип.
|
|
|||||
|
Регистрация: Jan 2008
Сообщений: 669
|
|
|
|||||
|
Регистрация: Dec 2008
Сообщений: 5
|
так как кнопок планирутся около 20-30
то решено было (по совету urasfinks) создавать под каждую отдельное текствое поле со своим содержанием и ссылкой. но так как во флеше новичок, возникли проблеммы - текстовая часть составляется, но не выводить в новосозданное поле . Помогите советом пожалуйста var newsXML:XML = new XML(); newsXML.ignoreWhite = true; var output:String = ""; newsXML.onLoad = function(success) { if (success) { var news:Array = newsXML.firstChild.childNodes; this.createEmptyMovieClip("txt_mc",0); for(i=0;i<news.length;i++) { output += "<b>"; output += news[i].childNodes[0].firstChild.nodeValue; output += "</b> - <i>"; output += news[i].childNodes[1].firstChild.nodeValue; output += "</i>"; txt_mc.createTextField("txt_name" , 1, 0, 0, 150, 10); txt_name.htmlText = output; trace (output); //txt_name.url = news[i].childNodes[2].firstChild.nodeValue; } } else { } } newsXML.load("news4.xml"); Последний раз редактировалось l2net; 06.12.2008 в 14:52. |
|
|||||
|
Регистрация: Jan 2008
Сообщений: 669
|
var newsXML:XML = new XML();
newsXML.ignoreWhite = true;
var output:String = "";
newsXML.onLoad = function(success) {
if (success) {
var news:Array = newsXML.firstChild.childNodes;
_root.createEmptyMovieClip("txt_mc",0);
for(i=0;i<news.length;i++) {
output += "<b>";
output += news[i].childNodes[0].firstChild.nodeValue;
output += "</b> - <i>";
output += news[i].childNodes[1].firstChild.nodeValue;
output += "</i>";
}
txt_mc.createTextField("txt_name" , 1, 0, 0, 150, 10);
txt_mc.txt_name.html = true;
txt_mc.txt_name.htmlText = output;
trace(output);
//txt_mc.txt_name.url = news[i].childNodes[2].firstChild.nodeValue;
}
}
newsXML.load("news.xml");
|
|
|||||
|
Регистрация: Dec 2008
Сообщений: 5
|
Kuruki - огромное спасибо! заработал вывод строки
изменил строку на ввывод: txt_mc.txt_name.htmlText = '<a href="'+news[i].childNodes[2].firstChild.nodeValue+'">'+output+'</a>'; ураа как теперь прочитать вторую новость?, я понимаю что созданное второе тектовое поле накладываться на первое т.е. нужно создать динамически изменяемую переменную....зависящую от "i" но куда ее притулить и как оформить? Заранее спасибо! |
|
|||||
|
Регистрация: Jan 2008
Сообщений: 669
|
var newsXML:XML = new XML(); newsXML.ignoreWhite = true; newsXML.onLoad = function(success) { if (success) { var news:Array = newsXML.firstChild.childNodes; _root.createEmptyMovieClip("txt_mc", 0); for (i = 0; i < news.length; i++) { var output:String = ""; output += "<b>"; output += news[i].childNodes[0].firstChild.nodeValue; output += "</b> - <i>"; output += news[i].childNodes[1].firstChild.nodeValue; output += "</i>"; txt_mc.createTextField("txt_name" + i , i, 0, i * 20, 300, 20); txt_mc['txt_name' + i].html = true; txt_mc['txt_name' + i].htmlText = '<a href="'+news[i].childNodes[2].firstChild.nodeValue+'">'+output+'</a>'; } } } newsXML.load("news.xml"); |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:19. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|