2011-02-23 66 views
3

我想要一個複雜的對話框出現,當用戶點擊我的插件添加的按鈕,但我找不到任何現有的對話框類型,支持添加任意控件。相反,我正在考慮創建一個只有一個頁面的嚮導 - 這可能會看起來不錯,但它不正確。有沒有更好的方法來創建一個複雜的控件對話框?在Eclipse插件中顯示覆雜對話框的正確方法是什麼?

回答

4

你想子類org.eclipse.jface.dialogs.TrayDialog。這將爲您提供一個對話框,其中包含按鈕欄和單擊幫助按鈕時將出現的滑出托盤。據TrayDialog的Javadoc中:

建議此類子類,而不是Dialog除了在對話不應該表現出盤

你把複雜的代碼在createDialogArea(Composite parent)方法所有病例。如果你希望一切都看起來正確,請確保你使用從超級調用返回的組合而不是使用父級。這將確保邊距設置爲默認值。例如:

protected Control createDialogArea(Composite parent) { 
    Composite parentWithMargins = (Composite) super.createDialogArea(parent); 

    /* 
    * Add your code here parenting off of parentWithMargins 
    */ 

    return parentWithMargins; 
} 
相關問題