2011-10-12 51 views
1

我想要做的就是在JFace TreeViewer列中添加雙擊進行排序。自2010年5月以來,我可以在Eclipse論壇中找到問題,但目前爲止沒有回覆。雙擊TreeViewer列標題的事件?

到目前爲止,我曾嘗試:

column.addListener(SWT.MouseDoubleClick, listener); // Not working, listener never called 

treeViewer.addDoubleClickListener(new IDoubleClickListener(); // Work in the item, not column header 

我缺少的東西?

任何建議是明智的。

Hei

回答

1

上次我檢查這個時候,SWT 3.7仍然是不可能的。與文檔狀態一樣,TreeColumnsTableColumns僅發送MoveResizeSelection事件。另外,列標題現在可以(當然,自3.5左右)顯示控件的上下文菜單。但是沒有什麼可以檢測到列標題上的雙擊。

既然你似乎需要這種排序,它必須是雙擊?列的Selection事件(即單擊)是實現該目的的常用方法。

+0

我正在使用選擇(單擊)事件來做到這一點。如果用戶正在操作第一行,通常會發生誤點擊並觸發度假區。 –

+0

我明白了。如果你確實想要使用雙擊,你可以嘗試使用'Selection'事件來實現它,並且測量兩個事件之間的時間。如果差異低於您的閾值,那麼這是雙擊。 – p12t

+0

剛剛嘗試了你的建議。可悲的是,它甚至沒有發出第二次點擊我的雙擊。似乎有點滯後(或確實是一個功能?)。我的設置是Win7,Java 1.6,Eclipse 3.6。 –