Created
November 17, 2013 07:18
-
-
Save nkonev/7510391 to your computer and use it in GitHub Desktop.
Demonstrates the MessageBox class
http://www.java2s.com/Code/Java/SWT-JFace-Eclipse/DemonstratestheMessageBoxclass.htm
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| //Send questions, comments, bug reports, etc. to the authors: | |
| //Rob Warner ([email protected]) | |
| //Robert Harris ([email protected]) | |
| import org.eclipse.swt.*; | |
| import org.eclipse.swt.events.*; | |
| import org.eclipse.swt.layout.*; | |
| import org.eclipse.swt.widgets.*; | |
| /** | |
| * This class demonstrates the MessageBox class | |
| */ | |
| public class ShowMessageBox { | |
| // Strings to show in the Icon dropdown | |
| private static final String[] ICONS = { "SWT.ICON_ERROR", | |
| "SWT.ICON_INFORMATION", "SWT.ICON_QUESTION", "SWT.ICON_WARNING", | |
| "SWT.ICON_WORKING"}; | |
| // Strings to show in the Buttons dropdown | |
| private static final String[] BUTTONS = { "SWT.OK", "SWT.OK | SWT.CANCEL", | |
| "SWT.YES | SWT.NO", "SWT.YES | SWT.NO | SWT.CANCEL", | |
| "SWT.RETRY | SWT.CANCEL", "SWT.ABORT | SWT.RETRY | SWT.IGNORE"}; | |
| /** | |
| * Runs the application | |
| */ | |
| public void run() { | |
| Display display = new Display(); | |
| Shell shell = new Shell(display); | |
| shell.setText("Show Message Box"); | |
| createContents(shell); | |
| shell.pack(); | |
| shell.open(); | |
| while (!shell.isDisposed()) { | |
| if (!display.readAndDispatch()) { | |
| display.sleep(); | |
| } | |
| } | |
| display.dispose(); | |
| } | |
| /** | |
| * Creates the main window's contents | |
| * | |
| * @param shell the parent shell | |
| */ | |
| private void createContents(final Shell shell) { | |
| shell.setLayout(new GridLayout(2, false)); | |
| // Create the dropdown to allow icon selection | |
| new Label(shell, SWT.NONE).setText("Icon:"); | |
| final Combo icons = new Combo(shell, SWT.DROP_DOWN | SWT.READ_ONLY); | |
| for (int i = 0, n = ICONS.length; i < n; i++) | |
| icons.add(ICONS[i]); | |
| icons.select(0); | |
| // Create the dropdown to allow button selection | |
| new Label(shell, SWT.NONE).setText("Buttons:"); | |
| final Combo buttons = new Combo(shell, SWT.DROP_DOWN | SWT.READ_ONLY); | |
| for (int i = 0, n = BUTTONS.length; i < n; i++) | |
| buttons.add(BUTTONS[i]); | |
| buttons.select(0); | |
| // Create the entry field for the message | |
| new Label(shell, SWT.NONE).setText("Message:"); | |
| final Text message = new Text(shell, SWT.BORDER); | |
| message.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); | |
| // Create the label to show the return from the open call | |
| new Label(shell, SWT.NONE).setText("Return:"); | |
| final Label returnVal = new Label(shell, SWT.NONE); | |
| returnVal.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); | |
| // Create the button and event handler | |
| // to display the message box | |
| Button button = new Button(shell, SWT.PUSH); | |
| button.setText("Show Message"); | |
| button.addSelectionListener(new SelectionAdapter() { | |
| public void widgetSelected(SelectionEvent event) { | |
| // Clear any previously returned value | |
| returnVal.setText(""); | |
| // This will hold the style to pass to the MessageBox constructor | |
| int style = 0; | |
| // Determine which icon was selected and | |
| // add it to the style | |
| switch (icons.getSelectionIndex()) { | |
| case 0: | |
| style |= SWT.ICON_ERROR; | |
| break; | |
| case 1: | |
| style |= SWT.ICON_INFORMATION; | |
| break; | |
| case 2: | |
| style |= SWT.ICON_QUESTION; | |
| break; | |
| case 3: | |
| style |= SWT.ICON_WARNING; | |
| break; | |
| case 4: | |
| style |= SWT.ICON_WORKING; | |
| break; | |
| } | |
| // Determine which set of buttons was selected | |
| // and add it to the style | |
| switch (buttons.getSelectionIndex()) { | |
| case 0: | |
| style |= SWT.OK; | |
| break; | |
| case 1: | |
| style |= SWT.OK | SWT.CANCEL; | |
| break; | |
| case 2: | |
| style |= SWT.YES | SWT.NO; | |
| break; | |
| case 3: | |
| style |= SWT.YES | SWT.NO | SWT.CANCEL; | |
| break; | |
| case 4: | |
| style |= SWT.RETRY | SWT.CANCEL; | |
| break; | |
| case 5: | |
| style |= SWT.ABORT | SWT.RETRY | SWT.IGNORE; | |
| break; | |
| } | |
| // Display the message box | |
| MessageBox mb = new MessageBox(shell, style); | |
| mb.setText("Message from SWT"); | |
| mb.setMessage(message.getText()); | |
| int val = mb.open(); | |
| String valString = ""; | |
| switch (val) // val contains the constant of the selected button | |
| { | |
| case SWT.OK: | |
| valString = "SWT.OK"; | |
| break; | |
| case SWT.CANCEL: | |
| valString = "SWT.CANCEL"; | |
| break; | |
| case SWT.YES: | |
| valString = "SWT.YES"; | |
| break; | |
| case SWT.NO: | |
| valString = "SWT.NO"; | |
| break; | |
| case SWT.RETRY: | |
| valString = "SWT.RETRY"; | |
| break; | |
| case SWT.ABORT: | |
| valString = "SWT.ABORT"; | |
| break; | |
| case SWT.IGNORE: | |
| valString = "SWT.IGNORE"; | |
| break; | |
| } | |
| returnVal.setText(valString); | |
| } | |
| }); | |
| } | |
| /** | |
| * Application entry point | |
| * | |
| * @param args the command line arguments | |
| */ | |
| public static void main(String[] args) { | |
| new ShowMessageBox().run(); | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment