0

我创建了一个 GWT 小部件,它是按钮。按钮有两种状态:向上和向下。我想根据按钮的状态更改按钮顶部的图像(图标)。

我认为最好的方法是为两种按钮状态创建单独的样式:

.buttonStateDown {
   color: red;
   background: ... here should be icon ImageResource. how to specify it? ...
}

.buttonStateUp {
   color: black;
   background: ... here should be icon ImageResource. how to specify it? ...
}

但我不知道我应该如何指定这些类的背景,它们是我的按钮的图标?

我的按钮可以有几个实例,带有不同的图标。因此,我无法将图像资源硬编码为这两种样式。我应该在创建按钮时注入它们。实际上,我可以通过构造函数或设置器注入 ImageResources。但问题是:我怎样才能将这些资源传递给我上面提到的样式?

4

2 回答 2

3

请纠正我的天气我写的或错误的,如果你看起来像在 Button Mousedown 处理程序上,你将其状态设置为向下,而 MouseUp 处理程序你将其状态设置为向上,那么我建议你在 gwt 中有 PushButton,你可以使用前:

PushButton pushBtn = new PushButton();
pushBtn.getUpFace().setImage(new Image(GWT.getModuleBaseURL() + "/images/1.png"));
pushBtn.getDownFace().setImage(new Image(GWT.getModuleBaseURL() + "/images/2.png"));

现在,当您按下按钮时,它会显示 2.png。

于 2013-03-21T12:41:54.443 回答
2

我怀疑您需要 GWT PushButton

不要创建任何自定义按钮并创建。并PushButton使用构造函数

PushButton(Image upImage, Image downImage, ClickHandler handler);
于 2013-03-21T12:41:54.350 回答