oracle jdbc jface wizardpage

时间:2010-07-05 20:51:38

标签: eclipse oracle jdbc jface wizard

我想创建一个jface向导并在我进行时收集凭据 - 第1页上的密码和用户名然后在第2页上我想显示我从oracle数据库获得的列表。

我正在使用eclipse,并且在我想要的地方拥有所有控件。在第2页,我将oracle连接详细信息和sql语句放在wizardpage的createControl方法中。这似乎失败了一个未找到的类(ojdbc6.jar包含在我的构建路径中),我无法确定这是一个eclipse问题还是我的代码(我的代码在独立时工作,而不是在向导中)

当我启动向导页面时发生了故障,它可能会执行,因为此时我没有获得正确的凭据。当您进入该向导页面时,我无法在向导页面文档中找到运行内容的方法。是否有一个在进入时运行的方法?

我想连接数据库以下拉列表来填充表格。

干杯

大卫

1 个答案:

答案 0 :(得分: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()来将焦点分配给正确的控件。