我有一個QWebView加載了一些網頁,但是當鼠標被按下並拖動時,它會選擇所有以這種方式出現的問題。QWebview/webkit禁用文本選擇
有什麼辦法可以擺脫這個?我不想要選擇文本和其他項目,
如果我限制mouseMove和mousePress那麼它與這些事件的其他功能也受限制,這是我不想要的。
我試過很多在QWebView/Qwebpage中找到任何方式,但沒有找到任何,我需要在webkit中做些什麼?
請幫
我有一個QWebView加載了一些網頁,但是當鼠標被按下並拖動時,它會選擇所有以這種方式出現的問題。QWebview/webkit禁用文本選擇
有什麼辦法可以擺脫這個?我不想要選擇文本和其他項目,
如果我限制mouseMove和mousePress那麼它與這些事件的其他功能也受限制,這是我不想要的。
我試過很多在QWebView/Qwebpage中找到任何方式,但沒有找到任何,我需要在webkit中做些什麼?
請幫
如果你控制的是被加載的內容,你可以使用CSS:
body { -webkit-user-select: none; }
否則你可能會增加一個用戶的樣式表這一規則。
如果你想有一個QT的答案,也許這是一個選項:
class MyWebView : public QWebView
{
protected:
virtual void mouseMoveEvent(QMouseEvent *) { /* dummy implementation */ }
public:
MyWebView(QWidget* parent) : QWebView(parent) { }
}
它覆蓋了原有的功能,並實現了只有按下和釋放事件的網頁視圖是可用的。 這在QT 4.8上適用於我。
試試這個方法:
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)
很好的工作文字,但還是如果我點擊和拖動重新開始的圖像,該圖像將跟隨指針(我希望能避免太)。編輯:解決方案在http://stackoverflow.com/questions/2040405/disable-drag-drop-in-qtwebkit – lapo 2011-08-11 12:12:09