背景:數組
在項目的實際使用中,要對多個元素進行拖拽到指定區域,而且這些元素還分屬於不一樣的類型中。在拖拽完第一個元素以後,再去拖拽其它元素,會發現又會拖拽一次第一個元素。eclipse
歷程:orm
一、網上搜索一番,沒有獲得答案;ip
二、翻閱ActionChains的源代碼,發現它是將全部action存儲在一個_actions的變量中。而後在perform方法中去執行這個數組中存儲的全部action.代碼以下:io
def perform(self):
"""
Performs all stored actions.
"""
for action in self._actions:
action()form
那問題就應該是:在第二次拖拽的時候,_actions數組中仍然保留了第一次拖拽的操做。變量
解決方法對應就是:在每一次拖拽前,都應該清空_actions數組。cli
第一想法,Action_chains自己是否有對_actions數組進行清空。在整個action_chains.py中搜索,並無找到對應的方法。搜索
既然沒有,就只能在本身的代碼中,在每一次執行前,都將數據_actions清空。方法
再一次執行屢次拖拽代碼,果真就沒有再出現重複拖拽元素的狀況。其實也能夠用eclipse打斷點,在執行的時候去查看這個數組裏的值有哪些。