我製作了一個基本的文本編輯器,讓用戶通過點擊按鈕將預定義的字符串插入到文檔中。我現在需要做的是讓用戶定義他們自己的按鈕和字符串值。Flex:動態創建按鈕並從txt文件分配值
例如,我有一個在文本中插入「Hello」的按鈕。用戶可能想要創建一個添加「再見」的按鈕。
爲了達到這個目的,我想我會創建一個名爲buttons.txt的.txt文件或其他東西。我會readutfbytee,通過它來創建按鈕。問題是我知道我想做什麼,但不知道從哪裏開始。有人能給我一個開始?
我製作了一個基本的文本編輯器,讓用戶通過點擊按鈕將預定義的字符串插入到文檔中。我現在需要做的是讓用戶定義他們自己的按鈕和字符串值。Flex:動態創建按鈕並從txt文件分配值
例如,我有一個在文本中插入「Hello」的按鈕。用戶可能想要創建一個添加「再見」的按鈕。
爲了達到這個目的,我想我會創建一個名爲buttons.txt的.txt文件或其他東西。我會readutfbytee,通過它來創建按鈕。問題是我知道我想做什麼,但不知道從哪裏開始。有人能給我一個開始?
對於初學者,您需要決定如何您將要存儲用戶輸入的數據。
flex web應用程序無法將任何文件保存到服務器,因此如果要將其保存到多臺計算機上,則需要一臺服務器來執行數據保存/檢索。
如果您想暫時存儲這些按鈕,並且只有一臺計算機是唯一的,則可以將它們填入SharedObject
。
當你決定了這個之後,你可以更具體地討論如何去做你想要的東西。
請檢查下面的代碼作爲簡單的方法來外部的按鈕設置:
/*
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
}
謝謝okulin,這是完美的:) – RapsFan1981
這是不會工作,如果它是所有的客戶端,如你所建議的。 – Nate
不使用的服務器,它的所有客戶端。 – RapsFan1981