0

我需要允许我的用户在我的表中编辑文件名值。因此,在我的 tableviewer 中,我添加了代码以在最后一列中创建和显示编辑按钮。我有这个工作。

当他们单击编辑按钮时,我希望在带有保存和取消按钮的文本框中打开一个带有文件名的对话框。

所以我创建了 FileNameDialog 类。

我的问题是:我在哪里创建对话框?

  • 我是否在基本对话框中创建一个方法并从 tableviewer 调用该方法


class SelectionListener implements Listener {
    TableItem item;
    Button editButton;
    Object element;

    public SelectionListener(TableItem item, Button deleteButton, Object element) {
        this.item = item;
        this.editButton = deleteButton;
        this.element = element;
    }

    public void handleEvent(Event event) {
        AplotPDFDataModel.FileNameData selected = (( AplotPDFDataModel.FileNameData)element);
        int index = AplotPDFDataModel.getInstance().getIndexOf(selected);
        pdfDialog.showEditFileNameDialog();  <<++++++++HERE

        Table table = getTable();
        table.getColumn(5).pack();
        table.getColumn(5).setWidth(100);
    }
} // End SelectionListener Class
  • 我是否只是在 tableviewer 中创建一个方法并在那里创建对话框?


public void showEditFileNameDialog() {
    editFileNameDialog = new EditFileNameDialog(getShell());
    editFileNameDialog.create();
    editFileNameDialog.getShell().setSize(300, 200);
    editFileNameDialog.open();  
}

从表格查看器中单击按钮打开对话框的最佳程序是什么?

4

1 回答 1

2

通常,您只需DialoghandleEvent.Listener

要获得Shell您可以交给以下Dialog任何一项的方法:

new EditFileNameDialog(getTable().getShell());

或者

new EditFileNameDialog(new Shell());
于 2012-10-18T14:23:21.573 回答