Какая клавиша нажимается на тексте события wxpython - PullRequest
0 голосов
/ 18 февраля 2019

Я использую wx.TextCrtl bind to wx.EVT_TEXT для получения ввода от пользователя, но я не знаю, как определить, какая клавиша была нажата (я могу прочитать последний символ в строке, используя st [LengthOfString-1], но это не хорошо для ключей, которые не являются буквами (например, клавиша Backspace). Если я использую событие wx.EVT_KEY_DOWN, то я не вижу вставленные данные. Что я могу сделать, чтобы они оба были?опция для манипулирования строкой, а также опция для определения каждой клавиши при нажатии?

self.command_line = wx.TextCtrl(self.CommandLinePanel, -1, style = wx.TE_MULTILINE | wx.TE_PROCESS_ENTER)  # past: self.log.
        self.command_line.Bind(wx.EVT_TEXT, self.OnKeyCommandLine)

def OnKeyCommandLine(self, event):
    st = str(event.GetString())
    LengthOfSt = len(st)
    #...
    #my code
    #End of function

Как добавить что-то вроде

self.command_line.Bind(wx.EVT_KEY_DOWN, self.OnKeyWhich)

def OnKeyWhich(self, evt):
    print "The key pressed: %s" % evt.GetKeyCode() 

и получить два события или, по крайней мере,результаты двух событий?

...