QWebView
マウス ホイール イベントで垂直方向ではなく水平方向にスクロールする最も簡単な方法は何ですか。次の代替案を考えることができますが、おそらくもっと簡単な方法があります。
- QWebView をサブクラス化して再実装する
QWebView::wheelEvent()
- 変換を行う表示されたページにJavaScriptをロードします
私の質問では、オプション 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);
}