質問

私は新しいPythonん作り出してしまおうというものは、簡単なGUIを使用Tkinter.

ていないという多くのユーザーインターフェース、を打つタブのボタンのフォーカスをテキストウィジェットです。いテキストウィジェット、タブのみindentsのテキストでカーソルを移動させます。

なんだろうけど、日本人の場合は設定可能?

役に立ちましたか?

解決

これは非常に簡単なTkinter.

カップルのものということです。最初にすることを、確認する必要があり、標準の挙動 が起こる。ということは、おないタブの両方を挿入タブに移動フォーカスを次のパーツをプレゼント!デフォルトでイベントが処理されたあとにより特定のウィジェットの前の標準的な挙動が発生した通常授業でのバインディング).Tkシンプルな構築機構による停止イベントから更に加工。

第二に、確認する必要がありますの送信の適切なパーツをプレゼント!が内蔵のサービスをご利用いただける、今後どのようなウィジェットです。

例えば:

def focus_next_window(event):
    event.widget.tk_focusNext().focus()
    return("break")

text_widget=Text(...)
text_widget.bind("<Tab>", focus_next_window)

重要なポイントこのコード:

  • の方法 tk_focusNext() を返します次のウィジェットのキーボードフォーカストラバーサル関係である。
  • の方法 focus() セットフォーカスするウィジェット
  • 帰国 "break" ために不可欠であることを防ぎ、クラスに結合から"焼いてつくるもの"だ。このクラス結合に挿入し、タブ文字をだした。

したい場合はこの行動のすべてのテキストウィジェット用に利用できます bind_class() の方法の代わりに bind() この結合に影響すべてのテキストウィジェット.

することができ、結合を送に焦点を非常に特定のウィジェットがお勧めでこだわり、デフォルトのフォーカストラバーサル、そして確実にフォーカストラバーサル順に通知するものとします。

他のヒント

単に、以下、この1つの行を使用して、タブボタンを押してフォーカスを変更することができるようになりますPyQt4で本当に簡単です。

self.textEdit.setTabChangesFocus(真)

のTkinterについてわからないが、PyQtはを、1タブの機能は、タブボックスによって放出される信号を変更する接続することができます(信号はint型の値を運びます)。しかし、これまで私は認識していますようQtは、それが指定されることなく、正しいことを行うにはかなり良いです。

にフォーカストラバーサルやカスタマイズ可能で、通常のX-ウィンドウズマネージャの取扱い(目次をマウスでクリック).による マニュアル ことができるはず bind イベントのキープレスイベントのタブプレス、および起こし focusNext イベントもある。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top