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
Пример открытия окна сообщения MessageBox
int 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 представлен на следующем скриншоте.
Исключения диалоговых оконДиалоговые окна могут вызвать следующие исключения :
|
