2017-06-25 169 views
0

由於您可以使用箭頭鍵在JavaFX中導航ContextMenu,有沒有辦法檢索當前突出顯示/選擇的MenuItem?JavaFX獲取ContextMenu的選定項目?

我基本上試圖創建一個像Outlook等自動完成功能與電子郵件地址,你開始打字,它給出了下面的建議,你可以按Tab鍵輸入選擇的菜單動作,而無需使用鼠標。

任何幫助表示讚賞,謝謝。

+0

我可能會嘗試在'Popup'內使用'ListView'來實現它。然後,列表視圖上的標準選擇模型將爲您提供所需的內容。 –

回答

0

嘗試使用組合框代替。它給你一個下拉列表和一個可選的文本框。上下文菜單是一個菜單項,如果將其包含在列表視圖或表視圖中,則只能實現選擇模型。

+0

你的意思是,例如,創建一個ListView,然後使用一個新的CustomMenuItem(ListView)來顯示列表?我得到的問題是,我需要從TextField中更改焦點,這不是我想要的。使用上下文菜單,我可以導航它,同時仍然關注TextField,繼續輸入,如果我包裝了一個ListView,它可以關注列表視圖(需要點擊)或TextFIeld。 –

+0

據我所知,上下文菜單具有有限的事件處理。您不能聽取菜單項或上下文菜單本身的焦點。這使得應用程序很難知道哪個項目的重點。 –

+0

有沒有辦法通過擴展課程來找到這個問題?或者通過檢查樣式表來查看MenuItem是否具有焦點屬性? –