我想重複的動作,如果有一種方法,通過TActions在TActionManager迭代沒有了傳統的我:對...但在代碼中使用迭代器= 0像德爾福XE2:在TAcionManager對象
for (action in actionManager.actions) do
begin
...
end;
它不起作用。 我試了很多,總是有相同的結果。
是不可能的或我做錯了什麼?
謝謝! M.
我想重複的動作,如果有一種方法,通過TActions在TActionManager迭代沒有了傳統的我:對...但在代碼中使用迭代器= 0像德爾福XE2:在TAcionManager對象
for (action in actionManager.actions) do
begin
...
end;
它不起作用。 我試了很多,總是有相同的結果。
是不可能的或我做錯了什麼?
謝謝! M.
動作管理器提供的枚舉器提供的動作類型爲TContainedAction
。它由動作管理器類提供,以便您可以直接枚舉動作管理器。你的代碼試圖迭代ActionManager.Actions
,這是不可能的,因爲Actions
是一個索引屬性。你不能遍歷其中的一個。
所以,你的代碼需要看起來像這樣:
var
Action: TContainedAction;
....
for Action in ActionManager do
begin
....
end;
您可能需要使用as
如果要訪問在的TContainedAction
後裔聲明的屬性上投地。
謝謝!我已經試過這種方式,但我用「for(在MainActionManager中的動作)做」和德爾福沒有編譯,因爲括號。 – shaman74 2013-03-15 11:36:08
當你說什麼「不起作用」時,如果你解釋它不工作的方式會有幫助。有時這些信息是有幫助的。 – 2013-03-14 14:10:20
對不起,我的意思是「它不能編譯」。命令「for(在MainActionManager.Actions中的操作)」引發編譯器錯誤「E2029'['expected but''''發現' – shaman74 2013-03-15 11:31:56