とあるメーカーエンジニアの趣味備忘録

Python, マイコンいじり, 日々の呟きなど

tkinter 自分用覚え書き【Python, tkinter】

こんにちは、限界理系大学院生です。
最近、Python を触っていてやっぱり GUI 開発をしてみたくなってきました。
というのも、現在家計簿の集計計算プログラムを開発したのですが、コンソールプログラム状態では気に入らない点がいくつか出てきてしまったからです。
例えば、

  • 実行するためにコマンドプロンプト等コンソールを開く手間を要する
  • 実行するために長いパス名を入力 or 配置ディレクトリへの移動が必要
  • 処理対象のファイル名の指定や処理内容の指定条件の変更に際してコードをいじる必要がある

等が挙げられます。
そこで、いよいよ GUI 開発に挑戦してみようということで tkinter を利用することにしました。
今回の記事は、自分用の備忘録として tkinter を利用していく中で調べた内容等をここに記載していこうと思います。

ボタンを押した際のイベント処理に関して

Buttonオブジェクトの .bind メソッドを利用します。 以下のように、.bind("クリック処理", 関数) と記述することで、指定したクリック処理と処理される内容とを紐づけることが可能です。

button = tk.Button(text='ボタン', width=30)
button.place(x=90, y=120)
button.bind('<Button-1>', outputWords)

上の例において"クリック処理" は "<Button-1>" であり、これはマウスの左クリックに相当します。
それでは、他のクリック処理はどう記述する必要があるのかを以下にまとめていきます。

  • <Button-1> : 左クリック
  • <Button-2> : マウスの真ん中のボタンクリック
  • <Button-3> : 右クリック
  • <Button-4> : スクロールアップ
  • <Button-5> : スクロールダウン

参考文献

PythonのTkinterを使って簡単なGUIプログラムを作ってみた - Qiita

GUI Programming with Python: Events and Binds