布局自定义按钮

时间:2012-03-08 19:26:45

标签: java user-interface layout swt

我正在尝试创建如下图所示的按钮:Powerpoint arrow buttons

通过执行以下操作非常有效:

class ArrowButton extends Composite {
    ArrowButton(Composite parent, int style) {
        [...]
        setRegion(customRegion);
    }
}

addStuff(Composite parent) {
    ArrowButton b = new ArrowButton(parent, SWT.NONE);
    b.setBounds(x, y, width, height);
}

但是,我想使用布局管理器来布局这些按钮。理想情况下,按钮按标准尺寸布置,之后它们仍然可以在该区域之外进行涂漆。

这一切都可能吗?我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

布局管理器有两个功能:计算它们应用的复合材料的大小,并设置复合材料子元素的边界。鉴于您的要求相对简单(水平排列按钮)我会说你最好自己做布局(而不是试图破解现有的实现)。如果感觉更好,您可以随时将代码放在Layout界面后面的委托中。