410013796724260
• Webmoney
R335386147728
Z369087728698
Диалоговые окна FileDialog ...Класс Dialog бибилиотеки SWT является базовым классом следующих диалоговых окон :
Диалоговое окно FileDialogКонструкторы FileDialogFileDialog(Shell parent) FileDialog(Shell parent, int style) Конструктор создания диалогового окна работы с файлами FileDialog в качестве параметра принимает родительское окно parent. Второму конструктору дополнительно необходимо передать стиль style, который может принимать одно из значений [SWT.SAVE, SWT.OPEN, SWT.MULTI] и определяет интерфейс и поведение диалогового окна FileDialog. Основные методы FileDialog
Пример использования FileDialog с фильтрациейВ следующем коде формируется диалоговое окно выбора файла с использованием фильтра. Для подключения фильтра вызываются методы setFilterNames и setFilterExtensions. Описание расширений файлов для фильтра представлено в переменноЙ FILTERS. // Описание файловых фильтров private static final String[][] FILTERS = {{"Файлы Word (*.docx)" , "*.docx"}, {"Файлы Excel (*.xlsx)", "*.xlsx"}, {"Файлы Adobe (*.pdf)" , "*.pdf" }, {"Все файлы (*.*)" , "*.*" }}; . . . /** * * */ private void setFilters(FileDialog dialog) { String[] names = new String[FILTERS.length]; String[] exts = new String[FILTERS.length]; for (int i = 0; i < FILTERS.length; i++) { names[i] = FILTERS[i][0]; exts [i] = FILTERS[i][1]; } // Определение фильтра диалога FileDialog dialog.setFilterNames(names); dialog.setFilterExtensions(exts); } . . . // Диалоговое окно чтения файла FileDialog dlg = new FileDialog(shell, SWT.OPEN); setFilters(dlg); String fname = dlg.open(); if (fname != null) System.out.println ("" + fname); Интерфейс диалогового окна выбора файла представлен на следующем скриншоте. Выпадающий список с фильтрами размещается в правом нижнем углу над кнопками управления. В следующем примере для сохранения нового файла конструктору FileDialog передается опция SWT.SAVE. // Диалоговое окно сохранения файла FileDialog dlg = new FileDialog(shell, SWT.SAVE); setFilters(dlg); String fname = dlg.open(); if (fname != null) System.out.println ("" + fname); Интерфейс диалогового окна сохранения файла представлен на следующем скриншоте. Выпадающий список с фильтрами размещается в нижней части под компонентом определения наименования файла. При использования опции SWT.MULTI для работы с несколькими файлами одновременно необходимо при выделении очередного файла дополнительно удерживать в нажатом состоянии CTRL. Диалоговое окно DirectoryDialogКонструкторы DirectoryDialogDirectoryDialog(Shell parent) DirectoryDialog(Shell parent, int style) Конструктор создания диалогового окна работы с директориями DirectoryDialog в качестве параметра принимает родительское окно parent. Второму конструктору дополнительно необходимо передать стиль style, который может принимать одно из значений [SWT.SAVE, SWT.OPEN]. Основные методы DirectoryDialog
Пример использования DirectoryDialogВ следующем примере формируется диалоговое окно выбора директории. DirectoryDialog dlg = new DirectoryDialog(shell, SWT.OPEN); dlg.setFilterPath("d:\\office"); String fdir = dlg.open(); if (fdir != null) System.out.println ("" + fdir); Интерфейс диалогового окна определения директории DirectoryDialog представлен на следующем скриншоте. Диалоговое окно DirectoryDialog позволяет выполнять переименование директории и содержит кнопку «Создать папку», позволяющую создать новую директорию даже если была использована опция SWT.OPEN. Диалоговое окно PrintDialogЭкземпляр класса PrintDialog позволяет пользователю выбрать принтер, установить определенные параметры и отправить задание на печать. Конструкторы PrintDialogPrintDialog(Shell parent) PrintDialog(Shell parent, int style) Основные методы PrintDialog
Класс PrinterData наследует DeviceData, описывает задание на печать в терминах printer'a и имеет следующие поля :
Пример открытия диалогового окна PrintDialogВ следующем примере формируется диалоговое окно печати. PrintDialog dlg = new PrintDialog(shell); PrinterData pdata = dlg.open(); if (pdata != null) System.out.println (pdata.toString()); Интерфейс диалогового окна печати PrintDialog представлен на следующем скриншоте. Диалоговое окно FontDialogЭкземпляр класса FontDialog позволяет пользователю выбрать шрифт из всех возможных шрифтов, установленных в системе. Конструкторы FontDialogFontDialog(Shell parent) FontDialog(Shell parent, int style) Конструктор создания диалогового окна выбора шрифта FontDialog в качестве параметра принимает родительское окно parent. Основные методы FontDialog
Экземпляр класса FontData описывает шрифт операционной системы, включающего следующие поля :
Конструкторы FontDataFontData() FontData(String string) FontData(String name, int height, int style) Основные методы FontData
Пример открытия диалог FontDialogВ следующем примере формируется диалоговое окно FontDialog для определения шрифта. FontDialog dlg = new FontDialog(shell); FontData font = dlg.open(); if (font != null) System.out.println (font.toString()); Интерфейс диалогового окна определения шрифта FontDialog представлен на следующем скриншоте. Окно сообщений MessageBoxMessageBox позволяет вывести информацию в диалоговом окне сообщений. Класс MessageBox нельзя наследовать. Конструкторы MessageBoxMessageBox(Shell parent) MessageBox(Shell parent, int style) Стили MessageBoxСтиль style позволяет определить внешний вид окна сообщений с представлением определенного изображения и кнопок управления :
Основные методы MessageBox
Пример открытия окна сообщения MessageBoxint style = SWT.APPLICATION_MODAL | SWT.OK | SWT.CANCEL; MessageBox messageBox = new MessageBox (shell, style); messageBox.setText ("Подтверждение выхода"); messageBox.setMessage ("Закрыть окно?"); int rc = return messageBox.open(); System.out.println ("return code : " + rc); Интерфейс примера окна сообщений MessageBox представлен на следующем скриншоте. Исключения диалоговых оконДиалоговые окна могут вызвать следующие исключения :
|