2

QWebViewマウス ホイール イベントで垂直方向ではなく水平方向にスクロールする最も簡単な方法は何ですか。次の代替案を考えることができますが、おそらくもっと簡単な方法があります。

  1. QWebView をサブクラス化して再実装するQWebView::wheelEvent()
  2. 変換を行う表示されたページにJavaScriptをロードします
4

2 に答える 2

0

私の質問では、オプション 1 の複雑さを過大評価していました。次のように実装しました(コンストラクターは省略):

class HScrollWebView : public QWebView
{
     Q_OBJECT
public:
     explicit HScrollWebView(QWidget *parent = 0);
protected:
     virtual void wheelEvent(QWheelEvent *ev);
};

void HScrollWebView::wheelEvent(QWheelEvent *ev){
     page()->currentFrame()->scroll(ev->delta(), 0);
}
于 2012-05-25T12:20:40.940 に答える