java - SWT 按钮图像限制

标签 java image button swt border

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

enter image description here

奇怪的是,如果使用SWT.LEFTSWT.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);

我还有一个与复合布局关联的监听器,用于调整列数,但我认为这无关紧要。

最佳答案

使用 Button 来完成此任务似乎不是最佳选择(因为边框)。

您最好使用Label来托管Image。您的代码只需更改很少的内容,因为您只需将所有出现的 Button 替换为 Label

关于java - SWT 按钮图像限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15963610/

相关文章:

java - matlab中调用java类的问题

java - 更改抽屉导航的默认选定项目(Android - Java)

java - 按 firebase 中的孙属性过滤 [在 android 中]

scheme - Transform-painter 如何在 SICP 中的图像语言中工作

ruby-on-rails - 用于图像的 Rails 自定义标题

java - 在Java中的不同时刻播放多种声音

java - 一个例子来说明 Java 中不可修改集合的这一点?

c++读取具有不同文件名的图像集而无需硬编码

php - 当用户选中复选框时更改 php 数组

javascript - 单击另一个按钮时将 .prev() 按钮更改为禁用