2016-06-07 70 views
0

我有一個部分和formtoolkit在一個複合。當我在搜索框(Text字段)中輸入一些文本時,它應根據用戶輸入進行過濾並顯示以下結果。在過濾數據時我遇到了一個問題。如何在用戶在文本字段中輸入文本時刷新複合數據。如何在通過文本字段進行篩選時刷新組合?

我想一個解決方案,它是同它是如何工作的

首選項 - >編譯器 - >錯誤/警告?

例子:

enter image description here

如果我輸入搜索框會顯示以下所有相關的「空」值「空」。

如何實現此過濾/刷新複合數據的實現?

回答

2

您引用的首選項頁面使用包含要過濾的所有控件的Composite執行此操作。 Composite使用GridLayout佈局。

每個控件都有一個GridData佈局數據。要設置一個控制可見或不可見,它使用:

control.setVisible(visible); 
((GridData)control.getLayoutData()).exclude = !visible; 

一旦這個已經做了要求:

composite.layout(true, true); 

完全重做Composite的佈局。

大部分代碼是org.eclipse.jdt.internal.ui.preference.OptionsConfigurationBlock

要做到過濾您創建的過濾器Text場,並添加ModifyListener聽文本的變化。

每次文本更改時,都會將每個控件的文本與過濾器進行匹配,並將控件設置爲可見/不可見,如上所述。在過濾結束時,您將執行layout調用。

+0

謝謝格雷格。但我想知道如何根據用戶在文本字段中的輸入過濾數據並同時刷新組合。謝謝。 –

+0

添加了如何執行實際過濾的大綱。 –

相關問題