【Tkinter】Canvasのメソッドを使っておしゃれなデザインを作る
Tkinterは透過色を苦手とするツールで、ウィジェットの透過色はサポートされてません(tk8.6現在)。そこで便利なのがCanvasウィジェットの各メソッドです。今回は以前作成したキッチンタイマーを、Canvasウィジェットの各メソッドと画像を使っておしゃれに改造してみましょう。
Tkinterは透過色を苦手とするツールで、ウィジェットの透過色はサポートされてません(tk8.6現在)。そこで便利なのがCanvasウィジェットの各メソッドです。今回は以前作成したキッチンタイマーを、Canvasウィジェットの各メソッドと画像を使っておしゃれに改造してみましょう。
今回はTkinterを使ってGUIのキッチンタイマーを作成してみましょう。処理はストップウォッチとよく似ていて、予めユーザーが時間をセットできるようにしたら、あとはストップウォッチ的に計測した時間を差し引いて残り時間を求めればOKです。
弊サイト「電脳世界」の著書・技術同人誌『Pythonの2歩目でGUIアプリ制作をやるならTkinter』の試し読み記事として、全120ページのうち40ページを無料で公開しています。
今回はTkinterを使ってGUIの電卓アプリを作成してみましょう。シンプルでイメージしやすいため初心者の練習用にはうってつけで、Frameウィジェット、Grid配置、bindメソッドによるトリガーイベントと処理の紐づけなどを実践的に学ぶことができます。
今回はTkinterを使ってGUIのストップウォッチアプリを作成してみましょう。ストップウォッチは機能がシンプルでわかりやすいため初心者でも作りやすく、timeモジュールのちょっとした応用やafterメソッドによるリアルタイム処理を学ぶことができます。
関数やメソッドを指定した時間だけ遅らせて実行させることができるafterメソッドの使い方について解説します。afterメソッドを使えばボタンを押した後にディレイを入れたり、処理を再帰的に呼び出して自動更新処理を作ることができます。
Tkinterで画像や図形を描くためのキャンバス(Canvas)ウィジェットについて解説します。このウィジェットでは線や円などの図形を作成して表示することができるほか、画像の表示、スクロールも可能です。
GUIアプリケーションではクリックやキー入力といったユーザーの操作(イベント)をトリガーにして何らかの処理(アクション)を行います。その紐づけを行うためにTkinterに用意されているのがbindメソッドです。
Tkinterではウィジェットのオプション引数に文字列や数値といった値を渡すことができますが、variable や textvariable といったオプションには変数を渡すことができます。これらを活用することで変数に格納した値を使いまわしたり、動的に値を変更する処理が効率的に行えるようになります。
Tkinterのウィジェット(Widget)には、あらかじめ設定されているオプション引数に値を与えることができます。使えるオプションはウィジェットごとに異なりますが、ウィジェットの高さや幅、背景色といった汎用性の高いものはほとんどのウィジェットで共通しています。