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

Вернуться   Форум Flasher.ru > Flash > Flex

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

Регистрация: Jun 2006
Сообщений: 78
По умолчанию MXML: Склеивание строки в свойстве (вызов функции из функции)

xml файл хранит ссылку
Код:
...
<item>
  <dc:link>how/id/runail/index.xml</dc:link>
</item>
...
getField( XML( linksItems.currentItem ), how1Link ) возвращает 'how/id/runail/index.xml' строкой

Код:
...
<mx:Repeater width="80%" id="linksItems" dataProvider="{ how1externalXML }">
<mx:LinkButton click="loadXML2('{ getField( XML( linksItems.currentItem ), how1Link ) }');" label="кнопка для ссылки" />
</mx:Repeater>
...
Так работает
<mx:LinkButton click="loadXML2('how/id/runail/index.xml');" label="кнопка для ссылки" />

Как вклеить возвращенное getField'ом в вызов loadXML2(); ?

Старый 25.07.2006, 15:31
Exey вне форума Посмотреть профиль Отправить личное сообщение для Exey Найти все сообщения от Exey
  № 2  
Ответить с цитированием
Exey

Регистрация: Jun 2006
Сообщений: 78
По умолчанию Кратко

Почему так не работает?

loadXML2('{ getField( XML( linksItems.currentItem ), how1Link ) }')

Старый 25.07.2006, 16:17
fishbounce вне форума Посмотреть профиль Отправить личное сообщение для fishbounce Посетить домашнюю страницу fishbounce Найти все сообщения от fishbounce
  № 3  
Ответить с цитированием
fishbounce

Регистрация: Dec 2003
Адрес: Москва
Сообщений: 176
а так не будет?
Код:
{loadXML2( getField( XML( linksItems.currentItem ), how1Link ) )}
без всяких кавычек там...

Старый 25.07.2006, 16:52
Exey вне форума Посмотреть профиль Отправить личное сообщение для Exey Найти все сообщения от Exey
  № 4  
Ответить с цитированием
Exey

Регистрация: Jun 2006
Сообщений: 78
По умолчанию Не то

Цитата:
а так не будет?
Код:
{loadXML2( getField( XML( linksItems.currentItem ), how1Link ) )}
без всяких кавычек там...
Тогда дебагер говорит:
Код:
Error: Repeater is not executing.
	at mx.core::Repeater/get currentItem()[C:\dev\GMC\sdk\frameworks\mx\core\Repeater.as:325]
	at MySite/___Button6_click()[C:\Documents and Settings\Administrator\My Documents\Flex Builder 2\MySite\MySite.mxml:202
А фигурные скобки, судя по хелпу "Определяют выражение, которое используется в XML или XMLList initializer"

Старый 25.07.2006, 18:28
fishbounce вне форума Посмотреть профиль Отправить личное сообщение для fishbounce Посетить домашнюю страницу fishbounce Найти все сообщения от fishbounce
  № 5  
Ответить с цитированием
fishbounce

Регистрация: Dec 2003
Адрес: Москва
Сообщений: 176
фигурные скобки - это data binding.
Вариант такой:
делаешь компоненту, например,
URLButton extends LinkButton
у которой делаешь св-во url ([Inspectable]), к примеру.
Далее в своем коде пишешь так:
Код:
<mx:Repeater width="80%" id="linksItems" dataProvider="{ how1externalXML }">
<custom:URLButton click="loadXML2(URLButton(event.target).url);" url="{getField( XML( linksItems.currentItem ), how1Link )}" label="кнопка для ссылки" />
</mx:Repeater>

Старый 25.07.2006, 18:30
fishbounce вне форума Посмотреть профиль Отправить личное сообщение для fishbounce Посетить домашнюю страницу fishbounce Найти все сообщения от fishbounce
  № 6  
Ответить с цитированием
fishbounce

Регистрация: Dec 2003
Адрес: Москва
Сообщений: 176
да, кстати, чтобы написать
Код:
<custom:URLButton />
нужно задать в Application тэге xmlns соответствующую, т.е.
Код:
xmlns:custom="путь к пакету где компонента лежит"

Старый 26.07.2006, 11:01
Exey вне форума Посмотреть профиль Отправить личное сообщение для Exey Найти все сообщения от Exey
  № 7  
Ответить с цитированием
Exey

Регистрация: Jun 2006
Сообщений: 78
Цитата:
Сообщение от tyombria
делаешь компоненту, например,
URLButton extends LinkButton
у которой делаешь св-во url ([Inspectable])
Код:
<?xml version="1.0" encoding="utf-8"?>
<mx:LinkButton xmlns:mx="http://www.adobe.com/2006/mxml">
    <mx:Script>
        <![CDATA[
            [Inspectable]
            public var url:String;
        ]]>
    </mx:Script>
</mx:LinkButton>
Заработало, спасибо

Создать новую тему Ответ Часовой пояс GMT +4, время: 00:38.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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