Как установить минимальный / максимальный размер FileDialog? - SWT - Java

Я хава DirectoryDialog как это:

private static void openFiles() {
    Display display = new Display();
    Shell shell = new Shell(display);
    DirectoryDialog directoryDialog = new DirectoryDialog(shell, SWT.OPEN | SWT.MULTI);
    directoryDialog.setFilterPath("c:\\");
    Files[] files = new File(directoryDialog.open().listFiles());
    shell.close();
    while (!shell.isDisposed()) {
        if (!display.readAndDispatch()) display.sleep();
    }
    display.dispose();
}

И как мне теперь, например, установить минимальный размер?

Я попробовал shell.setMinimumSize(500, 500), но это не сработало!

1 ответ

Вы не можете установить размер DirectoryDialog, Размер и положение определяются ОС.

Связанный: https://www.eclipse.org/forums/index.php/t/142845/


Если вам абсолютно необходимо обеспечить минимальный размер, вам нужно будет реализовать свой собственный. Для пользовательских диалогов я бы рекомендовал взглянуть на JFace Dialog и его подклассы.

Вот хорошая статья о диалогах SWT и JFace: http://www.vogella.com/tutorials/EclipseDialogs/article.html.


Я также нашел пользовательский диалог каталога, который только что реализован с использованием Shell так что вы, естественно, имеете полный контроль над размером и положением: http://esus.com/creating-an-swt-directorydialog/

Другие вопросы по тегам