有一天,我嘗試在flash中設置字符串var,我需要以某種方式將var設置爲文本框。我試圖這樣做:從輸入文本設置私人var字符串
private var name: String = fromthis.text;
它不起作用,任何人都知道爲什麼?
有一天,我嘗試在flash中設置字符串var,我需要以某種方式將var設置爲文本框。我試圖這樣做:從輸入文本設置私人var字符串
private var name: String = fromthis.text;
它不起作用,任何人都知道爲什麼?
如果我猜得不錯問題:
private var name: String = fromthis.text;
意味着你宣佈一個名爲name
變量,並使其價值在那一刻等於fromthis.text
。如果您鍵入fromthis
中的內容,則不會更改name
變量。您需要聽取TextFiled
CHANGE
event以使變量保持最新狀態。
更新:
你得到Error #1009
因爲fromthis
不是從那裏你聲明name
變量可見的,所以它等於null
,不能有任何領域(包括實地稱爲text
),所以你得到這個錯誤。
由於此時尚未創建,或者因爲代碼位於.as
類文件的內部,並且fromthis
位於舞臺上,因此無法像這樣訪問,所以可能會發生這種情況。
更新2:
如果name
坐落在一個類文件,並fromthis
只是拖入編輯器中的階段,最好的辦法是隻把它傳遞給類的構造函數:
private var _tf:TextField;
function MyClass(tf:TextField){
_tf = tf;
//or if you need the string from textfield just once you may pass that string
}
並調用類構造函數new MyClass(fromthis)
(假設您可以在您實例化類的地方訪問fromthis
)。
它以此消息返回:TypeError:錯誤#1009:無法訪問空對象引用的屬性或方法。 – ProgramKiddo
@ProgramKiddo - 更新了我的答案 – www0z0k
它位於一個類文件中,那麼有沒有辦法我可以找到它? – ProgramKiddo
看起來沒問題。在其他地方一定是個問題。請張貼額外的相關代碼,以及代碼的位置(時間軸,.as文件等)的描述。同時告訴我們「不起作用」的含義。你期望發生什麼以及發生了什麼*。 –