2010-07-05 52 views
1

我想創建一個jface嚮導,並隨着我一起收集憑證 - 第1頁上的密碼和用戶名,然後是第2頁上的信息我想顯示從Oracle數據庫獲得的列表。oracle jdbc jface wizardpage

我正在使用eclipse,並在我想要的地方擁有所有控件。在第2頁上,我將oracle連接細節和sql語句放在wizardpage的createControl方法中。這似乎失敗,找不到一個類(我的構建路徑中包含ojdbc6.jar),我無法確定這是否是eclipse問題或我的代碼(我的代碼在獨立運行時運行,而不是在嚮導中運行)

失敗發生在我啓動向導頁面時,它可能會做,因爲我沒有得到正確的憑據。在輸入該向導頁時,我無法在wizardpage文檔中找到運行內容的方法。有沒有一種方法可以在入口處運行?

我想連接到數據庫來下拉列表來填充表。

乾杯

大衛

回答

3

嚮導打開時,createControl方法被調用的所有網頁上。您應該只使用createControl來佈置SWT或JFace對象。

您可能想要在第二個頁面變爲可見時初始化JDBC連接。那時你會在頁面上加載你的列表。要做到這一點,覆蓋第二頁上調用setVisible方法如下:

/* (non-Javadoc) 
* @see org.eclipse.jface.dialogs.DialogPage#setVisible(boolean) 
*/ 
@Override 
public void setVisible(boolean visible) { 
    super.setVisible(visible); 
    if(visible){ 
     // initialize the jdbc connection here - use a data access object 
     // use the connection or the DAO to populate your list 
    } 
} 

這樣,當第二頁變爲可見的連接將被初始化。 setVisible方法的另一個有用的事情是通過在相關控件上調用forceFocus()來將焦點分配給正確的控件。