2013-02-28 104 views
0

我有一個按鈕,這是一個類,比如說,按鈕。還有一個主文檔(Main類),我可以在其中看到文本字段中的所有更改,刷新每一幀(是的,我不喜歡trace())。該按鈕具有更改主文件中使用的變量的功能。所以當我按下按鈕時,我將主要文件添加到舞臺上,我需要它的功能來工作。 Button類具有this.addEventListener(MouseEvent.CLICK,函數),進一步的函數將添加到主類的var中。所以,如果它添加了,我會看到文本字段中的更改。我看到我在圖形編輯器中直接添加的對象所做的更改,但是沒有按鈕的更改,我添加了其子項。變量是公開的。功能都是公開的。所以...AS3類間變量

類不能自由交換變量嗎?

如何通過不同類中的函數更改變量?

也許我需要導出和導入var?我認爲他們都是作爲一個共享所有公共變量的統一計劃工作。

主營:我創建VAR我,添加按鈕,兒童階段,並顯示我的每一幀= d

按鈕:當你按我的,我加1到i = d

舍伍德:主,YU不顯示我,按鈕更改? T_T

代碼示例:

http://piratepad.net/g5tTMFX4Bo

+1

如果你發佈了一些代碼,這將是一件好事。 – 2013-02-28 09:57:36

+1

由於對類的理解失敗,代碼在這裏不會有用。 – 2013-02-28 10:10:29

回答

1

鍵(或任何其他類)有正在使用它的實例環境沒有內置的知識。

DisplayObject的祖先能夠通過parentstage屬性檢查父容器和「主」容器。

程序員角色(你)是編寫靈活的方式來交換任何2個(或更多)類需要的信息,例如,通過暴露公共方法/屬性,調度事件(對方可以聽)等

因此,如果主要需要知道按鈕(按鈕的實例)被點擊添加偵聽器到該按鈕的點擊事件,然後你將能夠做任何你想要的,例如添加一個到i

如果按鈕,然後,例如需要提供最新值主要通過暴露的方法可以做到這一點,例如, myButton.setLabel("Value of i="+i);可以在上述的點擊監聽器來執行,

問候

+0

你的意思是我必須使用Main類來編寫button.addEventListener(MouseEvent.CLICK,function)?那麼課程中的重點是什麼?我認爲不要重載Main類,我可以在Button類中編寫一些代碼,然後將它應用到它的任何子類。如果我必須在Main中編寫Button的功能,那麼Button不再是有效的類,而只是一張圖片。沒有什麼像「導入我(按鈕);」在執行時從定義的類中導入i值?很明顯,我需要班級總是分享增值稅,我計入1,在另一個顯示結果,然後使用第三個...... – SherWood 2013-02-28 10:31:15

+0

「然後在類中有什麼意義?「這表明你有多少缺少面向對象的知識,請在互聯網上搜索關於類和OOP的內容,」類「封裝了一些任務/功能,它是一個更大系統的構建塊,我並不想冒犯你但是「回去上課」 – 2013-02-28 12:22:46

+0

我做過了,沒有發現任何比基礎知識更多的東西,而是來到這裏來問這個問題,我並不想冒犯你,但你是一個喜歡說兩次的人如果你知道 - 解釋它,我會感激它,會採用你使用過的相同的文字,但是有幫助的一個PS許多PPL給出了更愚蠢的問題,這些答案在這裏。 – SherWood 2013-03-02 16:25:31