CoolBar
CoolBar는 툴바나 버튼을 관리하는 작업에 사용되며, ToolBar 컨트롤과 비슷하지만, CoolBar는 프로그램이 실행하는 동안 재배치하거나 크기를 조정할 수 있습니다.
CoolBar는 여러개의 CoolItem을 포함하며, CoolItem은 각 기능으로 구분된 ToolBar를 감싸고 있습니다.
CoolItem은 왼쪽 끝에 핸들을 가지고 있습니다. 핸들을 더블클릭하면 CoolItem은 CoolBar의 최대한의 넓이로 확장되며, 최소한으로 축소되기도 합니다. 핸들을 드래그하면 CoolBar의 다른 부분으로 이동할 수 있습니다.
아래는 3개의 CoolItem으로 이루어진 CoolBar 예제입니다.
▶ 예제코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
package com.swtjface.Ch5;
import org.eclipse.jface.window.ApplicationWindow;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.CoolBar;
import org.eclipse.swt.widgets.CoolItem;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.ToolBar;
import org.eclipse.swt.widgets.ToolItem;
public class CoolBarTest extends ApplicationWindow {
public CoolBarTest() {
super(null);
}
protected Control createContents(Composite parent) {
// --- Create the window title. ---
getShell().setText("CoolBar Test");
String asCoolItemSection[] = { "File", "Formatting", "Search" };
CoolBar composite = new CoolBar(parent, SWT.NONE);
for (int idxCoolItem = 0; idxCoolItem < 3; ++idxCoolItem) {
CoolItem item = new CoolItem(composite, SWT.NONE);
ToolBar tb = new ToolBar(composite, SWT.FLAT);
for (int idxItem = 0; idxItem < 3; ++idxItem) {
ToolItem ti = new ToolItem(tb, SWT.NONE);
ti.setText(asCoolItemSection[idxCoolItem] + " Item #" + idxItem);
}
Point p = tb.computeSize(SWT.DEFAULT, SWT.DEFAULT);
tb.setSize(p);
Point p2 = item.computeSize(p.x, p.y);
item.setControl(tb);
item.setSize(p2);
}
return composite;
}
public static void main(String[] args) {
// --- Display CoolBarTest until the window is closed. ---
CoolBarTest app = new CoolBarTest();
app.setBlockOnOpen(true);
app.open();
Display.getCurrent().dispose();
}
}
|
댓글 없음:
댓글 쓰기