def key_press_event(self, win, event):
if event.type == gdk.KEY_PRESS:
k_name = gdk.keyval_name(event.keyval)
# print(k_name)
if ((k_name >= 'KP_0' and k_name <= 'KP_9') or \
(k_name >= '0' and k_name <= '9')) :
self.input(None, k_name[-1])
elif k_name in ['KP_Decimal', 'period', 'comma', 'KP_Separator'] :
if (self.data_type == 'float'):
self.input(None, decimal_point)
elif k_name in ['KP_Divide', 'slash'] :
self.input(None, '/')
elif k_name in ['KP_Multiply', 'asterisk'] :
self.input(None, '*')
elif k_name in ['parenleft', 'parenright'] :
self.input(None, '()')
elif k_name == 'F2' :
self.input(None, 'F2')
elif k_name in ['C', 'c'] :
self.input(None, 'C')
elif k_name == 'equal' :
self.input(None, '=')
elif k_name in ['KP_Subtract', 'minus'] :
self.input(None, '-')
elif k_name in ['KP_Add', 'plus'] :
self.input(None, '+')
elif k_name == 'BackSpace' :
self.input(None, 'BS')
elif k_name in ['KP_Enter', 'Return', 'space']:
self.dlg.response(gtk.RESPONSE_OK)
评论列表
文章目录