簡體   English   中英

如何動態添加JFace WizardPage

[英]How to dynamically add JFace WizardPage

我目前正在嘗試使用JFace向導為應用程序實現“導入向導”。

基本上,我必須根據用戶的輸入添加下一頁“及時”,因為向導中的每個“步驟”都取決於前一個。

因此,在WizardImport的構造函數中,我將使用以下命令添加第一頁:

    addPage(new WizardImportSourcePage(data));

然后,我要在此頁面(WizardImportSourcePage)中添加下一頁,具體取決於所選的來源,例如:

    btnCsv.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent arg0) {

            data.getWizard().addPage(new WizardImportSourcePage(data));

            setPageComplete(true);

        }
    });

如您所見,所有這些都發生在適當的偵聽器中。 不幸的是,這不起作用。 該向導缺少“下一步”按鈕,但僅顯示“完成”按鈕,因為在實際按下該按鈕之前,它對下一頁一無所知。 我已經嘗試調用updateButtons() ,但是它沒有任何改變。

那么,有什么建議可以使它起作用嗎? 動態構建向導頁面的正確方法是什么? 大多數教程似乎都假定頁面是在開始時創建的,只有使用getNextPage()才能更改順序。

在代碼擴展Wizard您可以覆蓋

public IWizardPage getNextPage(IWizardPage page)

在給定當前向導頁面的情況下,它可以讓您決定下一個要返回的頁面(還有一個getPreviousPage

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM