Flex: создавать кнопки динамически и назначать значения из текстового файла - PullRequest
0 голосов
/ 17 июля 2011

Я сделал основной текстовый редактор, который позволяет пользователям вставлять предопределенные строки в документ с помощью нажатий кнопок. Теперь мне нужно разрешить пользователю определять свои собственные кнопки и строковые значения.

Например, у меня есть кнопка, которая вставляет «Hello» в текст. Пользователь может захотеть создать кнопку, которая добавляет «До свидания».

Для достижения этой цели я решил создать файл .txt с именем buttons.txt или что-то в этом роде. Я хотел бы прочитать это, цикл через это, чтобы создать кнопки. Проблема в том, что я знаю, что хочу делать, но не знаю, с чего начать. Может ли кто-нибудь дать мне старт?

Ответы [ 2 ]

1 голос
/ 17 июля 2011

Пожалуйста, проверьте следующий код как простой способ перенастройки настроек вашей кнопки:

 /*
    buttons.txt content sample:     
    Helo=Hello World&Test=Test Inserted   
   */

    protected function loadSettings():void
    {
      var varLoader:URLLoader = new URLLoader();
      varLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
      varLoader.addEventListener(Event.COMPLETE, onSettingsLoaded);
      varLoader.load(new URLRequest("data/buttons.txt"));
    }

    protected function onSettingsLoaded(event:Event):void
     {
      var varLoader:URLLoader = URLLoader(event.target);
      var varButtons:URLVariables = varLoader.data;
      var buttons:Dictionary = new Dictionary();
      for(var label:String in varButtons{
        buttons[label]=varButtons[label].toString().split(",");
      }

      //use parsed buttons dictionary
    }
0 голосов
/ 17 июля 2011

Для начала вам нужно решить как вы будете хранить те данные, которые вводит пользователь.

Гибкое веб-приложение не может сохранять какие-либо файлы на сервер, поэтому, если вы хотите сохранить его на нескольких компьютерах, вам потребуется сервер для сохранения / поиска данных.

Если вы хотите хранить кнопки только временно и уникально для одного компьютера, вы можете вставить их в SharedObject.

После того, как вы решите это, тогда вы можете получить более конкретный вопрос о том, как делать именно то, что вы хотите.

...