Source Code : Shared Menu in SWT

Java Is Open Source Programming Language You Can Download From Java and Java Libraries From http://www.oracle.com. Click Here to download
We provide this code related to title for you to solve your developing problem easily. Libraries which is import in this program you can download from http://www.oracle.com. Click Here or search from google with Libraries Name you get jar file related it

Shared Menu in SWT

Shared Menu in SWT
/******************************************************************************
 * Copyright (c) 1998, 2004 Jackwind Li Guojie
 * All right reserved. 
 * 
 * Created on Jan 5, 2004 2:50:44 PM by JACK
 * $Id$
 * 
 * visit: http://www.asprise.com/swt
 *****************************************************************************/

import org.eclipse.swt.SWT;
import org.eclipse.swt.events.DisposeEvent;
import org.eclipse.swt.events.DisposeListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.MenuItem;
import org.eclipse.swt.widgets.Shell;

public class SharedMenu {
  Display display = new Display();
  Shell shell = new Shell(display);

  public SharedMenu() {

    menu();

    shell.pack();
    shell.open();
    
    while (!shell.isDisposed()) {
      if (!display.readAndDispatch()) {
        // If no more entries in event queue
        display.sleep();
      }
    }

    display.dispose();
  }
  
  private void menu() {
    shell.setLayout(new GridLayout(2, true));
    
    final Composite composite1 = new Composite(shell, SWT.BORDER);
    composite1.setBackground(display.getSystemColor(SWT.COLOR_BLACK));
    
    final Composite composite2 = new Composite(shell, SWT.BORDER);
    composite2.setBackground(display.getSystemColor(SWT.COLOR_BLUE));
    
    Menu menu = new Menu(composite1);
    MenuItem menuItem = new MenuItem(menu, SWT.PUSH);
    menuItem.setText("Popup menu");
    
    menuItem.addDisposeListener(new DisposeListener() {
      public void widgetDisposed(DisposeEvent e) {
        System.out.println("Menu item is disposed.");
      }
    });

    menuItem.addSelectionListener(new SelectionAdapter() {
      public void widgetSelected(SelectionEvent e) {
        System.out.println("Dispsoing ...");
        //composite2.setMenu(null);
        composite2.dispose();
      }
    });
    
    composite1.setMenu(menu);
    composite2.setMenu(menu);
  }

/*  
  private void complex() {
    shell.setLayout(new GridLayout(2, true));
    
    Label label = new Label(shell, SWT.NULL);
    label.setText("Label");
    
    Composite composite = new Composite(shell, SWT.NULL);
    composite.setLayout(new GridLayout());
    
    Button button1 = new Button(composite, SWT.PUSH);
    button1.setText("Button 1");
    
    Button button2 = new Button(composite, SWT.PUSH);
    button2.setText("Button 2");
    
  }
  
  private void addButton() {
    shell.setLayout(new GridLayout());
    
    Label label = new Label(shell, SWT.NULL);
    
    final Color color = new Color(display, 255, 0, 0);
    
    label.setForeground(color);
    label.setForeground(display.getSystemColor(SWT.COLOR_RED));
    
    label.setText("Testing label");
    
    label.addDisposeListener(new DisposeListener() {
      public void widgetDisposed(DisposeEvent e) {
        color.dispose();
      }
    });
  }

  private void draw() {
    GC gc = new GC(shell);
    gc.setLineWidth(3);
    
    //Color color = new Color(display, 255, 0, 0);
    
    //gc.setForeground(color);
    gc.drawRectangle(10, 10, 200, 100);
    
    gc.dispose();
  }
*/

  public static void main(String[] args) {
    new SharedMenu();
  }
  
}



           
       

Thank with us