PyQt4 でのイベント処理について学習しようとしてい
keyPressEvent
ますが、クラス定義を変更した後、矢印キー以外のすべてのキーが表示されるケースに遭遇しました。
すべてのキーを見てから:
class MaskWindow(QtGui.QGraphicsView):
def __init__(self):
QtGui.QGraphicsView.__init__(self)
self.deskTop = QtGui.QDesktopWidget()
self.scene = QtGui.QGraphicsScene(self)
矢印キー、ページダウンとアップを表示できませんが、他のキーは機能します (例: Tab, Shift, a- ) z:
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
クラスチェンジで何が足りなかったの?