2012-09-03 57 views
0

我有一個CellTree,它使用EditTextCell作爲其子的CompositeCell的一部分。我注意到,有時當我編輯一個節點並且點擊另一個時,這個單元切換到編輯模式,但第一個不會退出它。帶可編輯節點的GWT CellTree

調試CellTree類後,我發現有時onBlur事件在失去焦點時不會轉發到正在編輯的節點。

任何幫助將不勝感激。

回答

0

請確保您有這條線在構造

super("click", "keyup", "keydown", "blur"); 

這在事件處理程序

... 
else if ("blur".equals(type)) { 
     // Commit the change. Ensure that we are blurring the input element and 
     // not the parent element itself. 
     EventTarget eventTarget = event.getEventTarget(); 
     if (Element.is(eventTarget)) { 
      Element target = Element.as(eventTarget); 
      if ("input".equals(target.getTagName().toLowerCase())) { 
       commit(context, parent, viewData, valueUpdater); 
      } 
     } 
    } 

這個帖子EditTextCell FieldUpdater width

+0

自定義的最後答案看看包裝EdditableTExtCell的單元監聽模糊事件super(「click」,「keyup」,「keydown」,「blur」,「change」,「focus」,「keydown」)。我不認爲這是問題的根源,因爲有時正在編輯的節點在點擊另一個節點時退出編輯模式,有時不會 – Hakim