Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在GWT文本框小部件中添加图像或图标?_Gwt - Fatal编程技术网

如何在GWT文本框小部件中添加图像或图标?

如何在GWT文本框小部件中添加图像或图标?,gwt,Gwt,有没有办法在GWT文本框小部件中添加图像或图标 编辑:图像需要有ClickHandler。不是直接编辑 您可以像Gwt Mosaic项目中的ValueSpinner类那样扩展HorizontalPanel并创建新的小部件 如您所见,ValueSpinner将文本框和图像连接到水平面板中以创建小部件。不是直接创建的 您可以像Gwt Mosaic项目中的ValueSpinner类那样扩展HorizontalPanel并创建新的小部件 如您所见,ValueSpinner将文本框和图像连接到水平面板中以

有没有办法在GWT文本框小部件中添加图像或图标

编辑:图像需要有ClickHandler。

不是直接编辑

您可以像Gwt Mosaic项目中的ValueSpinner类那样扩展HorizontalPanel并创建新的小部件

如您所见,ValueSpinner将文本框和图像连接到水平面板中以创建小部件。

不是直接创建的

您可以像Gwt Mosaic项目中的ValueSpinner类那样扩展HorizontalPanel并创建新的小部件


如您所见,ValueSpinner将文本框和图像连接到水平面板中以创建小部件。

如果您只对直观添加图标感兴趣,可以使用css添加它,例如:

background-image:url('icon.png');
background-repeat:no-repeat;
更新:

如果您需要将事件添加到图像中,您可以像@Sandro Munda的回答一样在水平面板中绑定图像和文本框。另一种方法是使用绝对面板和css使图像和文本框重叠:

public class TextBoxWithImage extends Composite {
    public TextBoxWithImage() {
        AbsolutePanel p = new AbsolutePanel();
        p.add(new TextBox());       
        Image image = new Image("images/down.png");
        image.getElement().getStyle().setMarginLeft(-20, Unit.PX);
        p.add(image);       
        image.addClickHandler(new ClickHandler() {
            @Override
            public void onClick(ClickEvent event) {
                Window.alert("Clicked!");
            }
        });
        initWidget(p);
    }
}

如果您只对直观添加图标感兴趣,可以使用css添加图标,例如:

background-image:url('icon.png');
background-repeat:no-repeat;
更新:

如果您需要将事件添加到图像中,您可以像@Sandro Munda的回答一样在水平面板中绑定图像和文本框。另一种方法是使用绝对面板和css使图像和文本框重叠:

public class TextBoxWithImage extends Composite {
    public TextBoxWithImage() {
        AbsolutePanel p = new AbsolutePanel();
        p.add(new TextBox());       
        Image image = new Image("images/down.png");
        image.getElement().getStyle().setMarginLeft(-20, Unit.PX);
        p.add(image);       
        image.addClickHandler(new ClickHandler() {
            @Override
            public void onClick(ClickEvent event) {
                Window.alert("Clicked!");
            }
        });
        initWidget(p);
    }
}

但是,我需要将ClickHandler添加到图像中。但是,我需要将ClickHandler添加到图像中。