【发布时间】: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