如何在SWT中添加Button-s?

时间:2014-05-28 21:23:40

标签: java layout swt

只有一个"框架"显示在左下角,但我想在显示屏中显示(N * N)个按钮。我想用SWT创建一个表。该表将包含一个带按钮的列。

private void createButtonPanel() {
    GridData gridData = new GridData();
    gridData.heightHint = N * imageSize;
    gridData.widthHint = N * imageSize;
    Composite buttonPanel = new Composite(shell, SWT.NONE);
    buttonPanel.setBackground(new Color(display, 140, 140, 100));
    buttonPanel.setLayoutData(gridData);
    for (int i = 0; i < N; ++i) {
        for (int j = 0; i < N; ++i) {
            button[i][j] = new Button(buttonPanel, SWT.PUSH);
            button[i][j].setSize(imageSize, imageSize);
            button[i][j].setImage(null);
        }
    }
}

我有什么要改变的吗?

1 个答案:

答案 0 :(得分:0)

您想要使用的是

buttonPanel.setLayout(new GridLayout(N * imageSize, true));

这将创建Layout N * imageSize等宽列。您不必明确定义行数。

无需设置GridData#heightHintGridData#widthHint