0

gwtupload ライブラリを使用して、標準のアップロード フォームを変更しています。基本的には、画像を使用してウィジェットを作成し、css を介して :hover および :active で変更したいだけです。

public class FileUploadFormImpl extends FileUploadForm implements HasClickHandler {

  private SingleUploader fileUpload;

  public FileUploadFormImplCostum(String actionUrl) {
    setAction(actionUrl);
    // Create Panel with costum Button
    DecoratorPanel widget = new DecoratorPanel();
    widget.setSize("100%", "100%");
    widget.setStyleName("costum-Button");

    // Create a FileUpload widget.
    fileUpload = new SingleUploader(FileInputType.CUSTOM.with(widget));
    fileUpload.setStyleName("costum-Button"); 
    fileUpload.setWidth("100%");

    fileUpload.getWidget().setSize("100%", "100%);");

    add(fileUpload);
  }
    @Override
    public HandlerRegistration addClickHandler(ClickHandler handler) {
        return addDomHandler(handler, ClickEvent.getType());
    }

プロジェクトはビルドされますが、実行されません。次のエラー メッセージが表示されます。

java.lang.AssertionError: Button should implement HasClickHandlers

しかし、私はクリック ハンドラーを持っており、基本的にはライブラリのサンプル コード ページと同じです。私の実装が間違っているのか、何かが欠けているのかわかりません。助けてくれてありがとう。

4

1 に答える 1

1

FileInputType.CUSTOM.withHasClickHandlers を実装していない DecoratorPanelをメソッドに渡しています。

于 2013-12-05T13:48:58.383 に答える