2012年01月27日

キーボードのシグナルを受け付ける

キーボードのシグナルを受け付ける。

QtGui.QWidgetの中にすでにある関数keyPressEventを弄る。


import sys
from PyQt4 import QtGui, QtCore


class keyPress(QtGui.QWidget):

def __init__(self):
super(keyPress, self).__init__()

self.setMyself()

def setMyself(self):

self.setGeometry(300, 300, 250, 150)
self.setWindowTitle('press Escape')
self.show()

def keyPressEvent(self, hoge):

if hoge.key() == QtCore.Qt.Key_Escape:
self.close()

def main():

app = QtGui.QApplication(sys.argv)
ex = keyPress()
sys.exit(app.exec_())


if __name__ == '__main__':
main()


keyPressEvent関数



def keyPressEvent(self, hoge):
if hoge.key() == QtCore.Qt.Key_Escape:
self.close()


第一引数をhogeとした時に、

hoge.key()は何かしらのキーボードが押された時に値を変化させる。

hoge.key()がQtCore.Qt.Key_Escapeになった時に、.closeによってウィジェットを終了させる。

QtCore.Qt.Key_EscapeはEscapeが押された時のシグナルでありスロットであると思っておく。





この記事へのコメント

name:

mail:

HP:

comment:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/248716297

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。