1

smartgwtウィンドウでスクロールイベントが発生したときに何かしたいのですが。次の少なくとも1つが発生したときにイベントが発生すると想定しています:マウスのスクロールホイールでウィンドウ内をスクロールする、スクロールバーをドラッグしてスクロールする、またはスクロール矢印を使用してスクロールする。

smartgwtウィンドウと、ウィンドウの唯一の子であるsmartgwtキャンバスにハンドラーを追加しました。どちらもGWT.logに書き込むように設定されています。

ScrollEventしかし、私は発砲することができないようです。

何か案は?

4

1 に答える 1

1

何を間違えたかはわかりませんが、実際のサンプルは次のとおりです。

Window window = new Window();
 window.resizeTo(200,200);
 VLayout layout = new VLayout();
 layout.setOverflow(Overflow.AUTO);

 // create something large enough to allow scrolling
 Canvas canvas = new Canvas();
 canvas.setHeight(500);
 layout.addMember(canvas);
 window.addItem(layout);

 layout.addScrolledHandler(new ScrolledHandler() {
   @Override
   public void onScrolled(ScrolledEvent event) {
    SC.logWarn("scrolled");
   }
 });

 window.draw();

開発者コンソールを使用してログを確認します(アクセス方法については、SmartGWT FAQを参照してください)。

http://forums.smartclient.com/showthread.php?t=8159#aConsole

ウィンドウには自動生成された子(ヘッダーやフッターなど)がたくさんあるので、それらの1つにリスナーを追加しようとしても、スクロールできませんでした。

于 2010-01-27T20:19:27.107 に答える