java - 在 SWT 中禁用窗口调整大小 - 使用复合

标签 java widget swt

正在开发一个 Eclipse 插件,它的向导页面很少。我需要向导窗口大小保持不变,“同时禁用最大化和最小化”,“窗口禁用调整大小”。

重点是我没有使用SHELL。我使用的是COMPOSITE,它没有任何样式位。

我怎样才能做到这一点?我只是提供整个代码的一部分:

public void createControl(Composite parent) 
{
    // TODO Auto-generated method stub
    composite = new Composite(parent, SWT.NONE );
    composite.setLayout(new GridLayout());

    Composite selectAdapterComposite = new Composite(composite, SWT.NONE);
    FormLayout reportOptionsCompositeLayout = new FormLayout();
    reportOptionsCompositeLayout.marginHeight = 1;
    reportOptionsCompositeLayout.marginWidth = 1;
    selectAdapterComposite.setLayout(reportOptionsCompositeLayout);

    buttonInterfaceSelection = new Button(selectAdapterComposite,SWT.RADIO);
            //SWT.CHECK);
    buttonInterfaceSelection.setText("Generate adapter using interface !");
    buttonInterfaceSelection.setSelection(true);
    buttonInterfaceSelection.addListener(SWT.Selection, this);
    FormData exportInToExcelButtonData = new FormData();
    exportInToExcelButtonData.left = new FormAttachment(null, 5);
    buttonInterfaceSelection.setLayoutData(exportInToExcelButtonData);

    // One Text Box

    Label searchBoxLabel = new Label(selectAdapterComposite, SWT.None);
    searchBoxLabel.setText("Search to select [Type to get the results below]");
    FormData destinationLabelData = new FormData();
    destinationLabelData.top = new FormAttachment(buttonInterfaceSelection, 10);
    destinationLabelData.left = new FormAttachment(null, 5);
    searchBoxLabel.setLayoutData(destinationLabelData);
    searchTextBox = new Text(selectAdapterComposite, SWT.BORDER);
    searchTextBox.setSize(20, 2);

    FormData searchTextBoxData = new FormData();
    searchTextBoxData.top = new FormAttachment(searchBoxLabel, 8);
    searchTextBoxData.left = new FormAttachment(null, 5);
    // destinationFolderPathData.left = new
    // FormAttachment(destinationLabel,15);
    searchTextBoxData.width = 400;
    searchTextBox.addListener(SWT.Modify, this);
    searchTextBox.setEnabled(true);
    searchTextBox.setLayoutData(searchTextBoxData);

    .
    .
    .   
    .
    .

    setControl(composite);
}

请帮帮我。

最佳答案

您的代码片段与您的问题无关。关键字是向导。当您创建该向导时,它需要一个 Shell,因此您可以在那里设置其样式位。

WizardDialog 的构造函数:

public WizardDialog(Shell parentShell, IWizard newWizard)

外壳样式位示例:

parentShell.setShellStyle(parentShell.getShellStyle() | (~SWT.RESIZE));

关于java - 在 SWT 中禁用窗口调整大小 - 使用复合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18763358/

相关文章:

java - 为什么从不调用 getToolTipText?

java - 如何阻止对应用程序引擎中的 servlet 和 jsp 的访问?

php - 如何通过根据内容高度调整大小的 iframe 嵌入小部件

android - 为android中的应用程序制作小部件

java - Eclipse/SWT 中的 XULRunner 错误

swt - 如何在 Jface tableviewer 中向行添加替代颜色

java - 将组合框超出的内容包裹在可用空间中?

java - 二维数组尝试正确显示

javascript - 为什么jupyter notebook中的kepler map无法在nbviewer上渲染

java - JPasswordField.getPassword() 仍然不安全?