当用户删除GWTUpload中上载的图像时,在何处调用操作?
我用的是GWTUpload,图书馆就在这里 该网站上客户端的示例代码具有以下结构:当用户删除GWTUpload中上载的图像时,在何处调用操作?,gwt,gwtupload,Gwt,Gwtupload,我用的是GWTUpload,图书馆就在这里 该网站上客户端的示例代码具有以下结构: // Attach an image to the pictures viewer private OnLoadPreloadedImageHandler showImage = new OnLoadPreloadedImageHandler() { public void onLoad(PreloadedImage image) { //showImageFlowPanel code so
// Attach an image to the pictures viewer
private OnLoadPreloadedImageHandler showImage = new OnLoadPreloadedImageHandler() {
public void onLoad(PreloadedImage image) {
//showImageFlowPanel code solution 1
image.setWidth("75px");
showImageFlowPanel.add(image);
}
};
private IUploader.OnFinishUploaderHandler onFinishUploaderHandler = new IUploader.OnFinishUploaderHandler() {
public void onFinish(IUploader uploader) {
if (uploader.getStatus() == Status.SUCCESS) {
new PreloadedImage(uploader.fileUrl(), showImage);
UploadedInfo info = uploader.getServerInfo();
String headShotImageUrl="http://"+Window.Location.getHost()+"/" +"images/uploaded/"+info.message;
//headShotImage code solution 2
if(!"".equals(headShotImageUrl) && UriUtils.isSafeUri(headShotImageUrl)){
headShotImage.setUrl(UriUtils.fromString(headShotImageUrl));
}
}
}
};
该示例使用showImageFlowPanel
(解决方案1)存储图像,但我想将图像存储在headShotImage
中,该图像在用户成功上传图像后获取url,请参见上面的headShotImage
(解决方案2)代码
好的,头像代码工作正常,但我不知道当用户删除图像时如何删除它。如果我在解决方案1中使用showmageflowpanel
,那么程序会自动为我删除图像,我不需要做任何事情
因此,我的问题是“当用户在GWTUpload中删除上载的图像时,在哪里调用操作?”您必须使用
setOnCancelUploaderHandler
。看看这个从演示中获取的代码
// When the user clicks a cancel button we get an event
uploader.addOnCancelUploadHandler (
new IUploader.OnCancelUploaderHandler() {
public void onCancel(IUploader uploader) {
for (String iname : uploader.getServerMessage().getUploadedFieldNames()) {
// loadedImages is an temporary table where we are adding all uploaded files
// indexed by field name
Widget w = loadedImages.get(iname);
if (w != null) {
w.removeFromParent();
loadedImages.remove(uploader.getInputName());
}
}
}
});
没有“setOnCancelUploadHandler”,只有“addOnCancelUploadHandler”。此外,Image没有.get和.remove方法。美联社部分,它工作得很好。你是对的,我复制了一个粘贴的代码并做了一些修改,行195和114。最新评论。remove方法是我的演示中的面板,您必须使用小部件中的任何方法,但重要的是您可以处理事件和文件标识符。