我正在尝试创建如下图所示的按钮:
通过执行以下操作非常有效:
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);
}
但是,我想使用布局管理器来布局这些按钮。理想情况下,按钮按标准尺寸布置,之后它们仍然可以在该区域之外进行涂漆。
这一切都可能吗?我怎么能这样做?
答案 0 :(得分:1)
布局管理器有两个功能:计算它们应用的复合材料的大小,并设置复合材料子元素的边界。鉴于您的要求相对简单(水平排列按钮)我会说你最好自己做布局(而不是试图破解现有的实现)。如果感觉更好,您可以随时将代码放在Layout界面后面的委托中。