2009-02-27 179 views

回答

1

如果你不感興趣的子類,你也可以創建一個事件過濾器類並將該過濾器安裝到您想要偵聽的對象上(在這種情況下爲QListView)。

欲瞭解更多信息,請看QObject::installEventFilter()

2

嘗試實現一個新的類繼承的形式QListView和重新實現:

void QAbstractItemView::mousePressEvent (QMouseEvent * event) [virtual protected]. 

我希望它是有用的。 Salu2

+0

我已經完成了它,但是在處理新創建的信號之後,鼠標右鍵單擊也會發送到QDockWidget。 – 2009-02-27 11:10:13

1

Salu2是正確的,如果你還只是一個上下文菜單後(上單擊鼠標右鍵),你可以重新實現了QWidget ::的ContextMenuEvent

1

QApplication :: mousebuttons()怎麼樣?這是文檔建議要查找按鈕的操作。

+0

如何使用QApplication :: mousebuttons()? 我有同樣的問題。我嘗試使用這個函數,但是它沒有正確返回Qt :: RightButton或Qt :: LeftButton>。 – 2010-06-22 04:16:09