GWT getUrl不返回图像

GWT getUrl不返回图像,gwt,Gwt,我的war文件夹中有一个图像。我试着去看图像是什么,但我无法让它工作。我正在尝试使用GWT.getModuleBaseURL(),但它不会发出警报 if(soundImage.getUrl().equals(GWT.getModuleBaseURL()+"/soundOn.png")){ Window.alert("YEP IT DOES"); soundImage.setUrl("soundOff.png");

我的war文件夹中有一个图像。我试着去看图像是什么,但我无法让它工作。我正在尝试使用
GWT.getModuleBaseURL()
,但它不会发出警报

if(soundImage.getUrl().equals(GWT.getModuleBaseURL()+"/soundOn.png")){
                    Window.alert("YEP IT DOES");
                    soundImage.setUrl("soundOff.png");
                    setSound("off");
                }else{
                    soundImage.setUrl("soundOn.png");
                    setSound("on");
                }

我怎样才能得到图像?我是忽略了代码中的某些内容,还是我做错了?

如果您有HTML背景,那么更改图像的URL以更改视图是可以理解的,但在GWT领域有点疯狂。这大致类似于动态更改
的URL——这在技术上是可能的,但很奇怪。这个图像必然是某个组件的子组件。我将通过操作包含此图像的组件来替换此图像,而不是通过更改其URL来替换图像本身。图像的URL本质上是它的描述符,所以像这样更改属性很难。如果您正在使用MVP并创建了一个
视图
,那么您可能会公开一个类似
void-toggleSoundImage(boolean-on)
的方法

你真的应该这样做。你试图使用图像的方式是不符合传统的——有些人可能会说这是“错误的”

我故意不回答你的问题,因为如果你做得正确,导致这个问题的先决条件就不存在了


希望能有所帮助。

请注意,您正在使用相对路径设置url(
soundOn.jpg
),但正在使用模块绝对路径进行检查

URL应该仅与图像上的
src
属性相同

如果您使用:

if(soundImage.getUrl().equals(“soundOn.png”){

这应该行得通。我也建议使用特拉维斯推荐的图像资源