Ctrl + Hにバインドされたイベントハンドラがあります。これは、Tkinterもと認識し、バックスペースと認識します。 ハンドラの最後にreturn 'break'
と書いてありますが、ショートカットの伝播を止めるべきですが、それはうまくいきません! Ctrl + H問題なのですか?tkinterキーボードショートカットを無効にする
は、ここでは、コードです:
def setheading(event=None):
x=tkSimpleDialog.askstring('Set as header line', 'Enter an integer 1-5: ')
config.text.tag_add('h'+x, SEL_FIRST,SEL_LAST)
return 'break'
ご質問は不明であるカスケード接続のコールバックの詳細については、この1
関連の答えのようなユーティリティを使用することができます。コントロールが正しく機能しないのはどこですか?バインディングがあるウィジェット、ダイアログ内のウィジェット、またはどこかのelsで?より具体的に、完全な実例を含めるようにしてください。バインディングを処理する方法はたくさんありますので、必要なだけ多くの詳細が必要です。 –
すべてがテキストウィジェット(名前:config.text)で発生します。ここでctrl-hは実際にsetheading()を実行しますが、同時にINSERT前の最後の文字をバックスペースで返します – alessandro
また、このコミットを見て、自分のプロジェクトでどのように解決したかを見てください。https://github.com/GrosSacASac/WebSpree/コミット/ 40bf9da7346397f31767febe3872aba125cfbd42 –