我使用gwtupload libary来更改我的应用程序的上传视图。我想实现与本例"Single uploader using a customizable button..."基本相同的实现。因此我有一个自定义按钮类:
public class CostumButton extends Composite implements HasClickHandlers {
DecoratorPanel widget;
public CostumButton() {
widget = new DecoratorPanel();
initWidget(widget);
widget.setStyleName("costum-Button");
widget.setSize("100%","100%");
}
public HandlerRegistration addClickHandler(ClickHandler handler) {
return addDomHandler(handler, ClickEvent.getType());
}
}
和FileUploadFormImplDefault:
// new costum button
CostumButton button = new CostumButton();
// Create a FileUpload widget.
fileUpload = new SingleUploader(FileInputType.CUSTOM.with(button));
fileUpload.setTitle("costumFileUpload");
fileUpload.getWidget().setSize("100%", "50px");
RootPanel.get().add(fileUpload);
我的css文件:
.base-Button:active {
position:relative;
top:1px;
border: none;
}
.costum-Button {
cursor: pointer;
background-color: green;
background-image: url("resources/img/button_upload0.png");
}
.custom-Button:hover {
background-image: url("resources/img/button_upload0_hover.png");
}
所有内容都加载了上传视图:
uploadForm = new FileUploadFormImplCostum(actionUrl);
add(uploadForm);
当我启动我的应用程序时(在调试模式下)没有显示任何内容。我尝试使用chrome调试模式调试它,但没有来自我的服装形式的证据。不太清楚为什么。 thx任何帮助。
//编辑: 修复了一些事情,知道我有自定义按钮,并且每个 setAutoSubmit(true); 我禁用了“发送/提交”按钮。禁用工作正常,但它只是看不见所以它在那里并占用空间这是一个问题,因为我的上传器在另一个面板内,并知道我无法居中,因为它是提交按钮的中心。那么我该如何删除或重叠按钮。 CSS? thx:)
答案 0 :(得分:0)
我用Css和postion解决了这个问题。
提示:如果有人想在将来自定义UploadForm,对于简单的单文件上传,更容易将clickHanderler添加到新表单(图像,按钮等)上,执行元素单击基本上传表单。然后你可以将你的基本表格放在显示区域之外,或者将它放在新的自定义UploadForm后面,然后用css美化它。
gwtupload框架非常好,但对于这个简单的任务要多得多。对于带动画等的multipy fileupload,我可以推荐它:)