java - SWT Splitpane 可滚动

标签 java swt

我一直在使用 JPanels 等来构建我的 GUI。我现在工作的地方他们使用 SWT 来构建他们的 GUI。我有一个复合 Material ,我添加了一个窗框,根据模板的某些属性将窗框垂直或水平分割。我的问题是在 SWT 中如何分割 sashForm 并使其在分割的任一侧都可滚动。因此,如果我垂直分割 sashForm,我希望能够在分割的任一侧单独滚动。这在SWT中可能吗?如果这是一个如何执行此操作的示例,将不胜感激。以下是我正在使用的代码的总体思路。因为它与工作相关,我无法提供所有要审查的代码。该方法所在的类扩展了 Composite。

private void createContent() {
    this.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    this.setLayout(stackLayout);
    for (DVTemplate dvTemplate : loadableTemplates) {
        for (CompositeTemplate template : dvTemplate.templateList) {
            Composite templateComposite;
            Composite parentComposite = this;
            if (!isEmpty(template.parentComposite)) {
                parentComposite = compositeMap
                        .get(template.parentComposite);
            }
            if (isEmpty(template.sashStyle)) {
                templateComposite = new DataVisualizationComposite(
                        parentComposite, template.style, template.name,
                        DataVisualizationComposite.DataVisualization.EMPTY,
                        template.parentTemplate, true, false);
            } else {
                if ("HORIZONTAL".equals(template.sashStyle)) {
                    templateComposite = new SashForm(parentComposite,
                            SWT.HORIZONTAL);
                } else {
                    templateComposite = new SashForm(parentComposite,
                            SWT.VERTICAL);
                }
            }
       }
  }
}

最佳答案

添加ScrolledComposite (或一些本身支持滚动的小部件 - 例如表格或树)作为窗框子项。

关于java - SWT Splitpane 可滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16546175/

相关文章:

java - hibernate 一对一,没有给定标识符的行存在异常

java - JPA/Hibernate 映射 null

java - 表单提交结果实时动态输出到JSP页面

java - SWT ScrollableComposite 填充文本,想要水平换行和垂直滚动

java - 在 FileChooser 中选择多个文件

java - 将数组更改为 ArrayList

java - 以最简单的方式访问内部元素的属性

java - SWT-App 从可运行的 .jar 或外部文件夹加载 .swf 文件

java - 混合来自 SWT 和 Swing 的框架 (JFrame)

java - 在 SWT 文本字段中选择/标记特定单词