代码如下
Кнопка buttonIconBrowse;
Кнопка buttonSetIcon;
Изображение оболочкиIcon;
Кнопка изображенияIcon;
общественный IconSelector() {
инициализироватьUI();
оболочка.пакет();
оболочка.открыть();
в то время как (!shell.isDispose()) {
если (!display.readAndDispatch()) {
дисплей.сон();
}
}
дисплей.dispose();
}
частный недействительный инициализироватьUI () {
GridLayoutgridLayout = новый GridLayout(3, false);
Shell.setLayout(gridLayout);
labelIconFile = новая метка (оболочка, SWT.NULL);
textIconFile = новый текст (оболочка, SWT.SINGLE | SWT.BORDER);
GridData GridData = новые GridData(GridData.FILL_HORIZONTAL);
GridData.grabExcessHorizontalSpace = true;
textIconFile.setLayoutData(gridData);
buttonIconBrowse = новая кнопка (оболочка, SWT.PUSH);
GridData = новые GridData();
GridData.horizontalSpan = 3;
GridData.horizontalAlignment = GridData.CENTER;
buttonSetIcon = новая кнопка (оболочка, SWT.PUSH);
buttonSetIcon.setLayoutData(gridData);
shell.setText("Выбор значков");
labelIconFile.setText("Выберите значок:");
buttonIconBrowse.setText("Обзор");
buttonSetIcon.setText("Установить значок");
buttonIconBrowse.addSelectionListener (новый SelectionAdapter () {
public void widgetSelected(SelectionEvent e) {
Диалоговое окно FileDialog = новый FileDialog (оболочка, SWT.OPEN);
Строковый файл = диалог.open();
если (файл != ноль) {
textIconFile.setText(файл);
}
}
});
buttonSetIcon.addSelectionListener(новый SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
если (shellIcon! = ноль)
ShellIcon.dispose();
пытаться {
ShellIcon = новое изображение (дисплей, textIconFile.getText());
Shell.setImage(shellIcon);
}catch(Исключение ex) {
ex.printStackTrace();
}
}
});
}
public static void main(String[] args) {
новый IconSelector();
}
}