QWebview / webkit禁用文本选择

时间:2010-10-13 23:29:22

标签: webkit selection qwebview

我有一个加载一些网页的QWebView,但是当按下并拖动鼠标时会出现问题,选择所有出现在其中的内容。

有什么办法可以摆脱这个吗?我不希望选择文本和其他项目。

如果我限制mouseMove和mousePress,那么这些事件的其他功能也会受到限制,这是我不想要的。

我尝试在QWebView / Qwebpage中找到任何方法,但没有找到任何方法,我是否需要在webkit中做一些事情?

请帮忙

3 个答案:

答案 0 :(得分:10)

如果您控制正在加载的内容,则可以使用css:

body { -webkit-user-select: none; }

否则,您可以使用此规则添加用户样式表。

答案 1 :(得分:1)

如果您想要QT答案,也许这是一个选项:

class MyWebView : public QWebView
{
protected:
   virtual void mouseMoveEvent(QMouseEvent *) { /* dummy implementation */ }
public:
   MyWebView(QWidget* parent) : QWebView(parent) { }
}

它会覆盖原始功能,并且只能在您的网络视图中提供按下和发布活动。 这在QT 4.8上对我有用。

答案 2 :(得分:-1)

试试这个方法:

def mousePressEvent(self, event):
    if event.pos().x() in range(self.frameRight - self.vScrollWidth+1,self.frameRight+1) or event.pos().y() in range(self.frameBottom+1 - self.hScrollHeight,self.frameBottom+1):
        self.dragScroll = True
        super(myWeb,self).mousePressEvent(event)
def mouseMoveEvent(self,event):
    if self.dragScroll == True:
        super(myWeb,self).mouseMoveEvent(event)