Как привязать функции к клавишам на клавиатуре с помощью tkinter

Вот отличный комментарий в блоге от Марка Хекмана, в котором подробно описывается, как построить все возможные модели регрессии, с учетом набора объясняющих переменных и переменной ответа. Однако, как указал Йорис, я бы строго предостерег от использования такого подхода, поскольку (а) число регрессий возрастает экспоненциально и (б) статистические эксперты не рекомендуют вести промысел данных такого рода, поскольку это чревато всеми видами рисков.

-1
задан Miraj50 18 January 2019 в 10:56
поделиться

1 ответ

  1. Нет смысла привязывать кнопку к событию. По сути, вы хотите, чтобы при нажатии клавиши вызывался func(). Для этого в этом примере вам необходимо привязать событие к главному окну, как в main.bind('r' ,func).
  2. Чтобы использовать event, вы можете добавить его в качестве параметра и инициализировать его в None. Также обратите внимание, что <Enter> означает, что когда указатель мыши вводит виджет кнопки, а не клавишу Enter . Чтобы связать клавишу Enter, вам нужно использовать <Return>.

    import tkinter as tk
    
    def func(event=None):
        tk.Label(main, text="Meow").pack()
    
    main = tk.Tk()
    bRoll = tk.Button(text = "Hello", command = func)
    main.bind('r',func)
    bRoll.bind('<Enter>',func)
    bRoll.pack()
    
    main.mainloop()
    

Demo

Обратите внимание, что в приведенной выше демонстрации сначала я нажал клавишу R .

0
ответ дан Miraj50 18 January 2019 в 10:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: