2012-11-22 59 views
0

我正在開發一個RCP應用程序來捕獲和顯示http請求。該應用程序就像一個代理工具,但功能非常簡單。到目前爲止,我知道視圖變化可能由一些事件觸發:如:選擇。但我不知道如何更新/加載/刷新自動更改數據的視圖。在這種情況下,數據應該是捕獲的http請求。如何在RCP應用程序中自動更新/加載/刷新視圖

你能給我一些見解嗎?謝謝。

更新 一些不錯的人告訴我們使用可觀察模式來做到這一點。以下片段是我的代碼。但它不能按預期工作。用戶界面無法刷新。

IObservableList input = Properties.selfList(Sequence.class).observe(sequences); // Sequence stands for one request, sequences are a list of sequence. 

    tableViewer.setContentProvider(new ContentProvider()); 
    tableViewer.setLabelProvider(new TableLabelProvider()); 
    tableViewer.setInput(input); 

約瑟夫

+0

你是否認爲「正好」將完整的HTTP請求顯示爲多行文本或StyledText,還是解析數據並在不同的小部件中顯示不同的值?例如。內容類型在一個文本小部件中,並且長度在不同的文本小部件中。 –

+0

@TonnyMadsen只需在http url中顯示查詢字符串即可。這個應用程序的重點不在於解析http請求/頭。它是在請求到達時在視圖中顯示數據。 – Joseph

+0

所以換句話說,你不解析結果,但你「只是」替換文本或StyledText小部件的內容? –

回答

0

如果您解析接收到的數據,看看Eclipse的數據綁定框架。

這個框架的想法是,您可以將來自數據的模型表示(通常是Bean或EMF)的值與用於顯示數據的各種SWT控件綁定。然後,框架將在模型更改時自動更新小部件的內容(如果您允許,則反之亦然:-))。

的介紹,框架看到這個tutorial - 你可以找到很多的例子,在網絡上的文件...

編輯:另請參見snippets directory各種常見問題的解決......

相關問題