How bind/map global hotkey using Python Tkinter?












1















I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.



It seems I should use a GUI Toolkit for done it. I have researched for doing it using Tkinter, but I don't find a cross-platform way.










share|improve this question



























    1















    I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.



    It seems I should use a GUI Toolkit for done it. I have researched for doing it using Tkinter, but I don't find a cross-platform way.










    share|improve this question

























      1












      1








      1








      I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.



      It seems I should use a GUI Toolkit for done it. I have researched for doing it using Tkinter, but I don't find a cross-platform way.










      share|improve this question














      I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.



      It seems I should use a GUI Toolkit for done it. I have researched for doing it using Tkinter, but I don't find a cross-platform way.







      python tkinter cross-platform global-hotkey






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jan 1 at 13:32









      Ali HardanAli Hardan

      616




      616
























          2 Answers
          2






          active

          oldest

          votes


















          1














          With tkinter, if the window does not have keyboard focus it won't receive the keypress events so you won't be able to do what you want.



          However, with pynput you can listen to the keypress events:



          from pynput.keyboard import Listener

          def on_press(key):
          print("PRESSED", key)


          with Listener(on_press=on_press) as listener:
          listener.join()


          This should be cross-platform (but with some patform specific limitations).






          share|improve this answer































            2















            I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.




            You can't do that with tkinter. Tkinter has no support for this.






            share|improve this answer























              Your Answer






              StackExchange.ifUsing("editor", function () {
              StackExchange.using("externalEditor", function () {
              StackExchange.using("snippets", function () {
              StackExchange.snippets.init();
              });
              });
              }, "code-snippets");

              StackExchange.ready(function() {
              var channelOptions = {
              tags: "".split(" "),
              id: "1"
              };
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function() {
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled) {
              StackExchange.using("snippets", function() {
              createEditor();
              });
              }
              else {
              createEditor();
              }
              });

              function createEditor() {
              StackExchange.prepareEditor({
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: true,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: 10,
              bindNavPrevention: true,
              postfix: "",
              imageUploader: {
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              },
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              });


              }
              });














              draft saved

              draft discarded


















              StackExchange.ready(
              function () {
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53995857%2fhow-bind-map-global-hotkey-using-python-tkinter%23new-answer', 'question_page');
              }
              );

              Post as a guest















              Required, but never shown

























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              1














              With tkinter, if the window does not have keyboard focus it won't receive the keypress events so you won't be able to do what you want.



              However, with pynput you can listen to the keypress events:



              from pynput.keyboard import Listener

              def on_press(key):
              print("PRESSED", key)


              with Listener(on_press=on_press) as listener:
              listener.join()


              This should be cross-platform (but with some patform specific limitations).






              share|improve this answer




























                1














                With tkinter, if the window does not have keyboard focus it won't receive the keypress events so you won't be able to do what you want.



                However, with pynput you can listen to the keypress events:



                from pynput.keyboard import Listener

                def on_press(key):
                print("PRESSED", key)


                with Listener(on_press=on_press) as listener:
                listener.join()


                This should be cross-platform (but with some patform specific limitations).






                share|improve this answer


























                  1












                  1








                  1







                  With tkinter, if the window does not have keyboard focus it won't receive the keypress events so you won't be able to do what you want.



                  However, with pynput you can listen to the keypress events:



                  from pynput.keyboard import Listener

                  def on_press(key):
                  print("PRESSED", key)


                  with Listener(on_press=on_press) as listener:
                  listener.join()


                  This should be cross-platform (but with some patform specific limitations).






                  share|improve this answer













                  With tkinter, if the window does not have keyboard focus it won't receive the keypress events so you won't be able to do what you want.



                  However, with pynput you can listen to the keypress events:



                  from pynput.keyboard import Listener

                  def on_press(key):
                  print("PRESSED", key)


                  with Listener(on_press=on_press) as listener:
                  listener.join()


                  This should be cross-platform (but with some patform specific limitations).







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Jan 1 at 14:16









                  j_4321j_4321

                  6,15321531




                  6,15321531

























                      2















                      I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.




                      You can't do that with tkinter. Tkinter has no support for this.






                      share|improve this answer




























                        2















                        I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.




                        You can't do that with tkinter. Tkinter has no support for this.






                        share|improve this answer


























                          2












                          2








                          2








                          I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.




                          You can't do that with tkinter. Tkinter has no support for this.






                          share|improve this answer














                          I want to bind/map a global hotkey, which also works when application window minimized and not focused on it. I'm looking for a cross-platform way.




                          You can't do that with tkinter. Tkinter has no support for this.







                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered Jan 1 at 16:48









                          Bryan OakleyBryan Oakley

                          219k22266430




                          219k22266430






























                              draft saved

                              draft discarded




















































                              Thanks for contributing an answer to Stack Overflow!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid



                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.


                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function () {
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53995857%2fhow-bind-map-global-hotkey-using-python-tkinter%23new-answer', 'question_page');
                              }
                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown







                              Popular posts from this blog

                              MongoDB - Not Authorized To Execute Command

                              How to fix TextFormField cause rebuild widget in Flutter

                              Npm cannot find a required file even through it is in the searched directory