저는 SWT 초보자이며, 원하는대로 보이기 위해 UI를 둘러싼 문제를 겪고 있습니다. SWT를 조각에서 함께 자갈길 다음 코드를 살펴 보자 :SWT : veritcal separator가 너무 큽니다. 수평이 너무 짧다; 테이블이 너무 좁습니다.
실행Display.setAppName("App Name");
Display display = new Display();
Shell shell = new Shell(display);
GridLayout shellLayout = new GridLayout();
shellLayout.numColumns = 1;
shell.setLayout(shellLayout);
Group group = new Group(shell, SWT.DEFAULT);
RowLayout groupLayout = new RowLayout();
group.setLayout(groupLayout);
for (int i = 0; i < 3; i++)
new Button(group, SWT.PUSH).setText("ABC" + i);
new Label(group, SWT.SEPARATOR | SWT.VERTICAL);
for (int i = 0; i < 3; i++)
new Button(group, SWT.PUSH).setText("ABC" + i);
new Label(shell, SWT.SEPARATOR | SWT.HORIZONTAL);
Table table = new Table(shell, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);
table.setLinesVisible(true);
table.setHeaderVisible(true);
GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true);
table.setLayoutData(gridData);
for (String title : new String[] { "A", "B", "C", "D", "E", "F", "G" })
new TableColumn(table, SWT.NONE).setText(title);
for (int i = 0; i < 128; i++) {
TableItem item = new TableItem (table, SWT.NONE);
item.setText(0, "123");
item.setText(1, "234");
item.setText(2, "345");
item.setText(3, "456");
item.setText(4, "567");
item.setText(5, "678");
item.setText(6, "789");
}
for (TableColumn column : table.getColumns())
column.pack();
shell.pack();
shell.open();
while (shell.isDisposed() != true)
if (display.readAndDispatch() != true)
display.sleep();
display.dispose();
는, 결과 화면은 다음과 같은 문제가 있습니다
- 수직 분리는 버튼과 같은 "키"로 두 배입니다. 그리드 레이아웃의 맨 위 행은 다음과 같습니다 :
ABC1 ABC2 ABC3 | ABC1 ABC2 ABC3 |
내가 버튼처럼 단지 키로 구분을 좀하고 싶습니다.
가로 분리 기호는 화면 너비의 약 1/10입니다. 그리드에서 행의 전체 너비로 확장하려면 어떻게해야합니까?
테이블의 열은 포함 된 텍스트의 너비와 같습니다. 이로 인해 테이블 너비가 창의 너비의 약 1/2이됩니다. 나는 테이블의 너비 (그리고 너비에 따라 열의 너비)를 늘려서 창의 너비가 무엇이든 일치하도록 줄 싶습니다. 어떤 점을 달성 할 수있는 방법에 대한 올바른 방향으로 나를 가리킬 수 있습니까?
가로 분리기가 고정됩니다. 세로 레이블을 단추처럼 높이 만드는 방법에 대한 생각은 없습니까? 현재 키가 두 배입니다. – jph