Determining the Selected Item with Multiple Selections
More
work is required when you deal with a
multiple selection list. While you can still use
getSelection( )
to return a string array populated with
all the selected items, you must perform more processing to interact
with any given single item.
How do I do that?
Example 7-3 demonstrates how to deal with multiple
selected items returned from a call to getSelection()
.
Example 7-3. Working with multiple selection lists
import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.widgets.*; public class ListExample { Display d; Shell s; ListExample( ) { d = new Display( ); s = new Shell(d); s.setSize(250,250); s.setImage(new Image(d, "c:\\icons\\JavaCup.ico")); s.setText("A List Example"); final List l = new List(s, SWT.MULTI | SWT.BORDER); l.setBounds(50, 50, 75, 75); l.add("Item One"); l.add("Item Two"); l.add("Item Three"); l.add("Item Four"); l.add("Item Five"); final Button b1 = new Button(s, SWT.PUSH | SWT.BORDER); b1.setBounds(150, 150, 50, 25); b1.setText("Click Me"); b1.addSelectionListener(new SelectionAdapter( ) { public void widgetSelected(SelectionEvent e) { String selected[] = l.getSelection( ); for(int i = 0; i< selected.length; i++) { System.out.println(selected[i]); } } }); s.open( ); while(!s.isDisposed( )){ if(!d.readAndDispatch( )) d.sleep( ); } d.dispose( ); } }
In Example 7-3, a button is ...
Get SWT: A Developer's Notebook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.