Pre
Я искал другие Вопросы и не мог найти решение.
Я хочу выполнить клавишу Tab и операцию Shift одновременно, потому что я хочу добавить новое исполнение, нажав клавишу Tab. Я знаю, что перечисление Shiftmodifier хорошо.
Но это не работает, когда клавиша - это клавиша Tab. Знаете ли вы, как ее контролировать?
С другой стороны, Controlmodifier работает хорошо.
Когда я нажал клавишу Tab
tab only
Когда я нажал клавишу Tab & Control
tab & Control
Когда я нажимал любую клавишу, кроме клавиши Tab & Shift
print("tab & any key except for tab key")
Когда я нажал клавишу Tab & Shift
Нет ответа ... Почему?
Пример кода
from PySide import QtGui
from PySide import QtCore
import sys
class TSEditer(QtGui.QTextEdit):
def __init__(self,parent=None):
super(TSEditer,self).__init__(parent=None)
def keyPressEvent(self,event):
if event.key() == QtCore.Qt.Key_Tab and event.modifiers() == QtCore.Qt.ControlModifier:
print("tab & control")
elif event.key() == QtCore.Qt.Key_Tab and event.modifiers() == QtCore.Qt.ShiftModifier:
print("tab & shift")
elif event.key() == QtCore.Qt.Key_A and event.modifiers() == QtCore.Qt.ShiftModifier :
print("tab & any key except for tab key")
elif event.key() == QtCore.Qt.Key_Tab:
print("tab only")
return QtGui.QTextEdit.keyPressEvent(self,event)
def main():
try:
QtGui.QApplication([])
except Exception as e:
print(15,e)
ts = TSEditer()
ts.show()
sys.exit(QtGui.QApplication.exec_())
if __name__ == "__main__":
main()