Ein sehr gutes MessageBox Beispiel findet ihr bei www.java2s.com Die entscheidende Stelle hier nochmal kurz als Codesnippet:
MessageBox messageBox =
new MessageBox(shell,
SWT.ICON_WARNING | SWT.ABORT | SWT.RETRY | SWT.IGNORE);
messageBox.setText("Warning");
messageBox.setMessage("Save the changes before exiting?");
int buttonID = messageBox.open();
Quelle: http://www.java2s.com/Code/Java/SWT-JFace-Eclipse/MessageBoxExample.htm
Der zweite Parameter der MessageBox steuert die Anzahl und Art der Buttons die in der MessageBox angezeigt werden. Weiterhin kann mit dem zweiten Paremeter der Typ der MessageBox (hier Warnung) bestimmt werden.
Die MessageBox wird modal aufgerufen. Die Methode open() öffnet die MessageBox. Am Rückgabewert kann identifiziert werden, welcher Button vom Benutzer gedrückt wurde.
Die
buttonId
kann mit dafür vorgesehenen Konstanten der Klasse SWT verglichen werden, z.B. if ( buttonID == SWT.CANCEL ) { ...
Die aufgeführte Liste zeigt einige Konstanten für die Buttons:
- SWT.ABORT
- SWT.CANCEL
- SWT.IGNORE
- SWT.NO
- SWT.OK
- SWT.RETRY
- SWT.YES