2012-06-26 93 views
3

我正在測試JavaFX 2.1並試圖獲得可編輯的表格視圖,以我希望它們的方式工作。Java FX 2單元格編輯,焦點和文本選擇

我使用從JavaFX的2文檔作爲鹼的例子:http://docs.oracle.com/javafx/2/ui_controls/table-view.htm

的示例具有2個問題:

  1. 該用戶被迫在訂單中的細胞點擊3次以編輯它,一次選擇該行,一次選擇該單元格並使其可編輯,並進一步單擊以聚焦TextField
  2. 僅當按下Enter鍵時(如果在單元格外單擊鼠標,那麼輸入到單元格中的數據將丟失。

在另一方面,一個功能,它確實正常工作,是我可以用鼠標很多次,因爲我喜歡選擇文本,並重新定位的文本字段中插入符號。

有2個問題,這裏涉及到兩個問題分別:

Java FX 2 Table Cell Editing and Focus

javafx 2.1 Updating TableView

當回答第一個問題是在它自己的應用,我只必須單擊一次才能編輯單元格(在選中該行後),並且仍然可以選擇文本並移動該插入符號。

當第二個問題的答案被應用於它自己時,編輯被提交而沒有按下回車鍵,但是我只能重新定位脫字符或選擇文本一次,如果我再試一次,那麼編輯被提交。

當我將兩個答案都應用到一起時,焦點成功應用,並且在鼠標單擊時提交編輯,但是我無法完全重新定位插入符號或選擇文本。單元格內的任何鼠標單擊都會提交編輯。

我的問題是如何修復原始的2個問題而不會丟失插入符號和選擇文本的位置?

回答

1

在他對自己的問題的回答中試用jkaufmann的示例應用程序TableView - Better Editing through Binding?他的綁定解決方案和TableView編輯語義的實現似乎充分解決了您在問題中提出的所有問題。

+0

這正是我所需要的,謝謝:)現在我只需要了解我的方式以及爲什麼它可以工作,以便我可以在自己的應用程序中複製它。 – ajames