Dies ist eine alte Version des Dokuments!
Dialog (JFace)
org.eclipse.jface.dialogs.Dialog
Das Beispiel zeigt einen einfachen Dialog mit einem Label und einem Text-Feld:
public class MyDialog extends Dialog { private Label label; private Text text; protected MyDialog(Shell parentShell) { super(parentShell); } @Override protected Control createDialogArea(Composite parent) { Composite composite = (Composite) super.createDialogArea(parent); parent.setLayout(new GridLayout(1, false)); label = new Label(parent, SWT.FLAT); GridData gdl = new GridData(); gdl.grabExcessHorizontalSpace = true; label.setLayoutData(gdl); label.setText("Ihre Eingabe: "); text = new Text(parent, SWT.FLAT|SWT.BORDER); GridData gdt = new GridData(); gdt.grabExcessHorizontalSpace = true; text.setLayoutData(gdt); return composite; } @Override public void okPressed() { String str = text.getText(); System.out.println(str); close(); } }
Aufruf des Dialogs:
MyDialog dialog = new MyDialog(Display.getCurrent().getShell()); if (dialog.open() == Window.OK) { // mach irgendwas }