我想了解PyQt4中的事件處理,並偶然發現 keyPressEvent
在更改類定義後看到除箭頭鍵之外的所有鍵。從QGraphicsView到QMainWindow現在keyPressEvent沒有看到箭頭鍵
看見所有的鍵:
class MaskWindow(QtGui.QGraphicsView):
def __init__(self):
QtGui.QGraphicsView.__init__(self)
self.deskTop = QtGui.QDesktopWidget()
self.scene = QtGui.QGraphicsScene(self)
爲了看不到方向鍵,頁面向下和向上,但其他如工作標籤,移,一個 - ž:
class MaskWindow(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self, None, QtCore.Qt.WindowStaysOnTopHint|
QtCore.Qt.FramelessWindowHint)
self.deskTop = QtGui.QDesktopWidget()
self.view = QtGui.QGraphicsView(self)
self.scene = QtGui.QGraphicsScene(self)
這裏就是箭頭鍵不捕獲了關鍵的處理程序:
def keyPressEvent(self, event):
key = event.key()
if key == QtCore.Qt.UpArrow
self.diameter += 1
if key == QtCore.Qt.DownArrow:
self.diameter -= 1
我是怎麼與懷念班級變化?
這是因爲要傳遞給構造函數的窗口標誌幾乎可以肯定。你在哪個平臺上? – ekhumoro
這是在Windows 7上。我選擇了QMainWindow,因此我可以將窗口設置爲頂部並丟失邊框。有沒有辦法用QGraphicsView對象來做到這一點? – Dave
請忽略我之前的評論,並在下面查看我的答案。 – ekhumoro