gwtupload ライブラリを使用して、アプリケーションのアップロード ビューを変更しています。この例「カスタマイズ可能なボタンを使用した単一のアップローダー...」と基本的に同じように実装したいと思います。したがって、私はカスタムボタンクラスを持っています:
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);ごとにわかっていることをいくつか修正しました。「送信/送信」ボタンを無効にしました。無効にすると問題なく動作しますが、表示されないだけでそこにあり、スペースを取りません。これは、アップローダーが別のパネル内にあり、送信ボタンで中央に配置されているため、中央に配置できないことがわかっているためです。では、ボタンを削除または重ねるにはどうすればよいですか。cs? どうも :)