当在SWT Button上设置图像并且图像较大(在本例中为宽度)时,按钮的限制不会生效,来自一个按钮的图像可以“触摸”来自另一个按钮的图像。

奇怪的是,如果使用SWT.LEFT或SWT.RIGHT,问题不会出现在各自的一端。尝试使用SWT.CENTER,但没有成功。
有什么“变通办法”可以绕过这个问题吗?或者只是任何SWT用户都必须习惯的东西?
复合代码:
GridLayout gridLayout = new GridLayout(1, true);
gridLayout.marginWidth = 0;
gridLayout.marginHeight = 0;
gridLayout.verticalSpacing = 0;
setLayout(gridLayout);
setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));按钮代码:
Button button=new Button(this, SWT.PUSH | SWT.WRAP);
GridData gridData=new GridData(SWT.FILL, SWT.FILL, true, false);
gridData.widthHint=size.width;
gridData.heightHint=size.height;
button.setLayoutData(gridData);我还有一个与复合布局相关联的侦听器,用于调整列数,但我假设这是不相关的。
发布于 2013-04-14 00:58:48
使用Button来完成这项任务似乎不是最好的选择(因为有边界)。
您最好使用Label来托管Image。您的代码只会有很小的更改,因为您只需要用Label替换所有出现的Button。
https://stackoverflow.com/questions/15963610
复制相似问题