SWT - Пример SashForm
Что такое SashForm?
В SWT SashForm похож на Group, однако он добавил еще одну полезную функцию, которая позволяет пользователю регулировать размер элемента управления в среде выполнения. SashForm предоставляет эту функцию, создавая подвижную линию между дочерним виджетом (кнопка, метка, текст…). Когда пользователь перетаскивает «линию», он увеличивает размер одного виджета и уменьшает остальные.
Виджет SashForm поддерживает два стиля.
1) SWT.SWT.HORIZONTAL
2) SWT.VERTICAL
Как создать виджет SashForm?
Здесь я покажу, как создать виджет с четырьмя кнопками и связать его с SashForm в стиле HORIZONTAL и VERTICAL.
import org.eclipse.swt.SWT; import org.eclipse.swt.custom.SashForm; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; public class SWTSashForm { public static void main (String [] args) { Display display = new Display (); Shell shell = new Shell(display); shell.setText("SWT SashForm Example"); shell.setLayout(new FillLayout()); // Create the SashForm with HORIZONTAL SashForm sashForm = new SashForm(shell, SWT.HORIZONTAL); new Button(sashForm, SWT.PUSH).setText("Left"); new Button(sashForm, SWT.PUSH).setText("Right"); // Create the SashForm with VERTICAL SashForm sashForm2 = new SashForm(shell, SWT.VERTICAL); new Button(sashForm2, SWT.PUSH).setText("Up"); new Button(sashForm2, SWT.PUSH).setText("Down"); shell.open(); while (!shell.isDisposed ()) { if (!display.readAndDispatch ()) display.sleep (); } display.dispose (); } }