SWT工具栏问题

时间:2010-10-02 13:19:47

标签: java swt

我有2个问题关于SWT:

  1. 有一种快速方法可以将工具栏对齐到窗口的右侧(启动时)吗?

  2. 我可以创建一个占用窗口100%的工具栏吗?

  3. 感谢您的帮助:)

1 个答案:

答案 0 :(得分:1)

不幸的是,CoolBar没有对齐字段。但它确实有边界,可用于将其与右侧对齐并使其占据窗口的整个宽度。 CoolBar不允许高度超过21,因此必须考虑窗口尺寸的高度以使其填满窗口。为此,请计算必要的客户端区域大小,然后相应地调整shell的大小。 This thread可能有助于调整大小。

//This code will make the coolBar take up the entire window width running Windows 7 with default windows
Rectangle shellBounds = shell.getClientArea();
coolBar.setBounds(0, 0, shellBounds.width, shellBounds.height); 

您可以使用相同的逻辑将coolBar对齐到屏幕的右侧。

//Justify the toolbar to the right side of the screen
int coolBarWidth = 200; //arbitrarily chosen dimensions
int coolBarHeight = 40;
coolBar.setBounds(shellBounds.width - coolBarWidth, 0, coolBarWidth, coolBarHeight);

此外,一些coolBar元素在其构造函数中具有对齐参数。

CLabel lblTest = new CLabel(coolBar, SWT.LEFT); //SWT.LEFT could be replaced with SWT.CENTER or SWT.RIGHT

我希望这会有所帮助。