Java/SWT JFace Eclipse/Group
Содержание
Demonstrates groups
<source lang="java">
//Send questions, comments, bug reports, etc. to the authors: //Rob Warner (rwarner@interspatial.ru) //Robert Harris (rbrt_harris@yahoo.ru) import org.eclipse.swt.SWT; import org.eclipse.swt.layout.*; import org.eclipse.swt.widgets.*; /**
* This class demonstrates groups */
public class GroupExample {
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); shell.setLayout(new GridLayout()); // Create the first group Group group1 = new Group(shell, SWT.SHADOW_IN); group1.setText("Who"s your favorite?"); group1.setLayout(new RowLayout(SWT.VERTICAL)); new Button(group1, SWT.RADIO).setText("John"); new Button(group1, SWT.RADIO).setText("Paul"); new Button(group1, SWT.RADIO).setText("George"); new Button(group1, SWT.RADIO).setText("Ringo"); // Create the second group Group group2 = new Group(shell, SWT.NO_RADIO_GROUP); group2.setText("Who"s your favorite?"); group2.setLayout(new RowLayout(SWT.VERTICAL)); new Button(group2, SWT.RADIO).setText("Barry"); new Button(group2, SWT.RADIO).setText("Robin"); new Button(group2, SWT.RADIO).setText("Maurice"); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } display.dispose(); }
}
</source>
Group Example
<source lang="java">
import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.ruposite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Shell; public class GroupShellExample {
Display d; Shell s; GroupShellExample() { d = new Display(); s = new Shell(d); s.setSize(200, 200); s.setText("A Shell Composite Example"); final GroupExample ge = new GroupExample(s, SWT.SHADOW_ETCHED_IN); ge.setLocation(20, 20); s.open(); while (!s.isDisposed()) { if (!d.readAndDispatch()) d.sleep(); } d.dispose(); } public static void main(String[] arg) { new GroupShellExample(); }
} class GroupExample extends Composite {
final Button b1; final Button b2; final Button b3; public GroupExample(Composite c, int style) { super(c, SWT.NO_BACKGROUND); this.setSize(110, 75); this.setLayout(new FillLayout()); final Group g = new Group(this, style); g.setSize(110, 75); g.setText("Options Group"); b1 = new Button(g, SWT.RADIO); b1.setBounds(10, 20, 75, 15); b1.setText("Option One"); b2 = new Button(g, SWT.RADIO); b2.setBounds(10, 35, 75, 15); b2.setText("Option Two"); b3 = new Button(g, SWT.RADIO); b3.setBounds(10, 50, 80, 15); b3.setText("Option Three"); } public String getSelected() { if (b1.getSelection()) return "Option One"; if (b2.getSelection()) return "Option Two"; if (b3.getSelection()) return "Option Three"; return "None Selected"; }
}
</source>
Group Example 2
<source lang="java">
import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Shell; public class GroupShellExample2 {
Display d; Shell s; GroupShellExample2() { d = new Display(); s = new Shell(d); s.setSize(200, 200); s.setText("A Group Example"); final Group g = new Group(s, SWT.SHADOW_ETCHED_IN); g.setSize(110, 75); g.setText("Options Group"); final Button b1; final Button b2; final Button b3; b1 = new Button(g, SWT.RADIO); b1.setBounds(10, 20, 75, 15); b1.setText("Option One"); b2 = new Button(g, SWT.RADIO); b2.setBounds(10, 35, 75, 15); b2.setText("Option Two"); b3 = new Button(g, SWT.RADIO); b3.setBounds(10, 50, 80, 15); b3.setText("Option Three"); g.pack(); g.setLocation(20, 20); s.open(); while (!s.isDisposed()) { if (!d.readAndDispatch()) d.sleep(); } d.dispose(); } public static void main(String[] arg) { new GroupShellExample2(); }
}
</source>
Group Examples
<source lang="java">
/******************************************************************************
* All Right Reserved. * Copyright (c) 1998, 2004 Jackwind Li Guojie * * Created on 2004-4-10 18:41:39 by JACK * $Id$ * *****************************************************************************/
import org.eclipse.swt.SWT; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; public class GroupExamples {
Display display = new Display(); Shell shell = new Shell(display); public GroupExamples() { Group group0 = new Group(shell, SWT.NULL); group0.setLayout(new FillLayout()); Label label = new Label(group0, SWT.NULL); label.setAlignment(SWT.CENTER); label.setText("a group without title."); Group group1 = new Group(shell, SWT.NULL); group1.setText("SWT.NULL"); Group group2 = new Group(shell, SWT.SHADOW_ETCHED_IN); group2.setText("SWT.SHADOW_ETCHED_IN"); Group group3 = new Group(shell, SWT.SHADOW_ETCHED_OUT); group3.setText("SWT.SHADOW_ETCHED_OUT"); Group group4 = new Group(shell, SWT.SHADOW_IN); group4.setText("SWT.SHADOW_IN"); Group group5 = new Group(shell, SWT.SHADOW_OUT); group5.setText("SWT.SHADOW_OUT"); Group[] groups = new Group[]{group0, group1, group2, group3, group4, group5}; for(int i=0; i<groups.length; i++) { groups[i].setBounds(10, 10 + i * 50, 300, 40); } shell.pack(); shell.open(); //textUser.forceFocus(); // Set up the event loop. while (!shell.isDisposed()) { if (!display.readAndDispatch()) { // If no more entries in event queue display.sleep(); } } display.dispose(); } private void init() { } public static void main(String[] args) { new GroupExamples(); }
}
</source>
Group Label and Button
<source lang="java">
import org.eclipse.swt.SWT; import org.eclipse.swt.custom.SashForm; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.ruposite; import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Label; public class Ch3_Composite extends Composite {
public Ch3_Composite(Composite parent) { super(parent, SWT.NONE); parent.getShell().setText("Chapter 3 Composite"); Ch3_Group cc1 = new Ch3_Group(this); cc1.setLocation(0, 0); cc1.pack(); Ch3_SashForm cc2 = new Ch3_SashForm(this); cc2.setLocation(125, 25); cc2.pack(); pack(); }
} class Ch3_Group extends Composite {
public Ch3_Group(Composite parent) { super(parent, SWT.NONE); Group group = new Group(this, SWT.SHADOW_ETCHED_IN); group.setText("Group Label"); Label label = new Label(group, SWT.NONE); label.setText("Two buttons:"); label.setLocation(20, 20); label.pack(); Button button1 = new Button(group, SWT.PUSH); button1.setText("Push button"); button1.setLocation(20, 45); button1.pack(); Button button2 = new Button(group, SWT.CHECK); button2.setText("Check button"); button2.setBounds(20, 75, 90, 30); group.pack(); }
} class Ch3_SashForm extends Composite {
public Ch3_SashForm(Composite parent) { super(parent, SWT.NONE); SashForm sf = new SashForm(this, SWT.VERTICAL); sf.setSize(120, 80); Button button1 = new Button(sf, SWT.ARROW | SWT.UP); button1.setSize(120, 40); Button button2 = new Button(sf, SWT.ARROW | SWT.DOWN); button2.setBounds(0, 40, 120, 40); }
}
</source>
SWT Group demo
<source lang="java">
import org.eclipse.jface.window.ApplicationWindow; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.ruposite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Label; public class CompViewer extends ApplicationWindow {
public CompViewer() { super(null); } protected Control createContents(Composite parent) { Ch3_Group cc1 = new Ch3_Group(parent); return parent; } public static void main(String[] args) { CompViewer cv = new CompViewer(); cv.setBlockOnOpen(true); cv.open(); Display.getCurrent().dispose(); }
} class Ch3_Group extends Composite {
public Ch3_Group(Composite parent) { super(parent, SWT.NONE); Group group = new Group(this, SWT.SHADOW_ETCHED_IN); group.setText("Group Label"); Label label = new Label(group, SWT.NONE); label.setText("Two buttons:"); label.setLocation(20, 20); label.pack(); Button button1 = new Button(group, SWT.PUSH); button1.setText("Push button"); button1.setLocation(20, 45); button1.pack(); Button button2 = new Button(group, SWT.CHECK); button2.setText("Check button"); button2.setBounds(20, 75, 90, 30); group.pack(); }
}
</source>