#ruby #tk #keyboard-events
#ruby #tk-toolkit #клавиатура-события
Вопрос:
Я использую Ruby и Tk. Я хочу знать ключевые символы различных нечетных клавиш на моей необычной клавиатуре. Я хочу знать, каковы они на самом деле, а не просто то, что говорит какая-то ссылка (например, эта), что они должны быть.
Ответ №1:
Этот код работал для меня с использованием Ruby 2.2.5 (с Tk 8.5.12) в Windows 7:
# coding: utf-8
require 'tk'
def lambda_keypress
@lambda_keypress ||= Kernel.lambda do |key_code, key_symbol|
puts "lambda_keypress invoked with keycode #{key_code} and keysym #{key_symbol}."
end
end
def root
$root ||= begin
Tk::Encoding.encoding = ''.encoding
TkRoot.new
end
end
root.bind :KeyPress, lambda_keypress, '%k %K'
Tk.mainloop