SWT menu

public class MenuTest {

  public static void main(String[] args) {
      Display display = new Display();//Create a display object
      final Shell shell = new Shell(display);//shell is the main window of the program
      shell.setText("Menu Example");
      Menu mainMenu = new Menu(shell, SWT.BAR);
      shell.setMenuBar(mainMenu);
      //Menu mainMenu = new Menu(shell,SWT.POP_UP);//Create popup menu
      //shell.setMenu (mainMenu);//Create popup menu
      {
          //"File" item
          MenuItem fileItem = new MenuItem(mainMenu, SWT.CASCADE);
          fileItem.setText("File&F");
          //"File" menu
          Menu fileMenu = new Menu(shell, SWT.DROP_DOWN);
          fileItem.setMenu(fileMenu);
          {
              //"New" item
              MenuItem newFileItem = new MenuItem(fileMenu, SWT.CASCADE);
              newFileItem.setText("New&N");
              //"New" menu
              Menu newFileMenu = new Menu(shell, SWT.DROP_DOWN);
              newFileItem.setMenu(newFileMenu);
              {
                  //"New Project" item
                  MenuItem newProjectItem = new MenuItem(newFileMenu, SWT.PUSH);
                  newProjectItem.setText("Project\tCtrl+Shift+N");
                  //Set the shortcut key
                  newProjectItem.setAccelerator(SWT.CTRL+SWT. SHIFT+'N');
                  //Add event listener
                  newProjectItem.addSelectionListener(new SelectionAdapter() {
                  @Override
                  public void widgetSelected(SelectionEvent e) {
                  Text text = new Text(shell, SWT.MULTI | SWT.BORDER | SWT.WRAP);
                     text.setBounds(10, 10, 100, 30);
                     text.setText("You selected "New item");
                  }
                  });
                  new MenuItem(newFileMenu, SWT.SEPARATOR);
                  //"Package" item
                  new MenuItem(newFileMenu, SWT.PUSH).setText("Package");
                  //"Class" item
                  new MenuItem(newFileMenu, SWT.PUSH).setText("class");
               }
               //"Open" item
               MenuItem openFileItem = new MenuItem(fileMenu, SWT.CASCADE);
               openFileItem.setText("Open&O");
               //"Exit" item
               MenuItem exitItem = new MenuItem(fileMenu, SWT.CASCADE);
               exitItem.setText("Exit&E");
            }
            //"Help" item
            MenuItem helpItem = new MenuItem(mainMenu, SWT.CASCADE);
            helpItem.setText("Help&H");
         }
         shell.pack();
         shell.open();
         while(!shell.isDisposed()){//If the main form is not closed Then keep looping
            if(!display.readAndDispatch()){//If display is not busy
               display.sleep();//sleep
            }
         }
         display.dispose();//destroy display
     }
 }

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326462454&siteId=291194637