【问题标题】:Scroll bar disappearing when resizing dialog调整对话框大小时滚动条消失
【发布时间】:2013-11-28 04:19:51
【问题描述】:

我在 eclipse 中实现了这个选择对话框,当我在一定限制后调整此对话框的大小时,垂直滚动条消失,我想实现它类似于 eclipse 在按 ctrl+shift 时实现其“打开类型”对话框的方式+T。然而,当我看到“打开类型”对话框的代码时,我没有从中得到任何线索来了解他们如何实现滚动条功能。如果有人对此有任何想法,请提供帮助。

我的对话区代码是

@Override
    protected Control createDialogArea(Composite parent) {
        initializeDialogUnits(parent);
        Composite comp = (Composite) super.createDialogArea(parent);
        String label = getMessage();
        if (label != null && label.trim().length() != 0) {
            Label labelComp = new Label(comp, SWT.BEGINNING);
            labelComp.setText(label);
        }
        label = getViewerLabel();
        if (label != null && label.trim().length() != 0) {
            Label viewerLabel = new Label(comp, SWT.BEGINNING);
            viewerLabel.setText(label);
        }
        createMessageArea(comp);
        StructuredViewer fViewer;
        fViewer = createViewer(comp);
        fViewer.setLabelProvider(getLabelProvider());
        fViewer.setContentProvider(getContentProvider());
        fViewer.setInput(getViewerInput());
        List<?> selectedElements = getInitialElementSelections();
        if (selectedElements != null && !selectedElements.isEmpty()) {
            fViewer.setSelection(new StructuredSelection(selectedElements));
        }
        addViewerListeners(fViewer);
        addCustomFooterControls(comp);
        Dialog.applyDialogFont(comp);
        String help = getHelpContextId();
        if (help != null) {
            PlatformUI.getWorkbench().getHelpSystem().setHelp(comp, help);
        }
        return comp;
    }

感谢和问候

【问题讨论】:

  • 不明白你想要什么。当尺寸足够大时,滚动条会在 Open Type 上消失。
  • 抱歉,我的意思是当我们缩小“打开类型”对话框而不是最大化它时。
  • 任何人都可以对此发表评论......也许尝试回答这个......我被困在这里。事件 Eclipse 代码库没有多大帮助
  • 如果您只想要一个滚动条,请在创建查看器时指定 SWT.V_SCROLL。否则你需要更清楚地解释你想要什么。
  • 嗨,我可以创建一个滚动条..这不是问题。问题是,当我使用鼠标减小对话框的大小时,在特定点之后,我的对话框的滚动条会消失。但是,如果您通过在边框上使用鼠标来减小“打开类型”对话框的大小,它永远不会隐藏滚动条。我想实现相同的功能。我一直在浏览 eclipse 代码库,但那里没有任何东西可以帮助我确定他们是如何实现这个功能的。

标签: java eclipse dialog swt jface


【解决方案1】:

我找到了解决这个问题的方法,我使用 eclipse spy 来确定所有布局的设置 在打开类型对话框的情况下,我在对话框的情况下使用了相同的布局数据。我给了我类似的结果。

【讨论】:

    猜你喜欢
    • 2016-11-27
    • 1970-01-01
    • 2015-04-24
    • 2017-11-09
    • 2015-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-17
    相关资源
    最近更新 更多