PROGRAM PYTHON

tkinter超入門【第26回 キャンバス⑩~XBM】

 

 

キャンバスでXBMを表示しよう

前回はCanvasウィジェットを使って画像を表示しました。
今回はキャンバス上にビットマップのXBM画像を表示してみましょう。

 

XBMの仕様

XBM(X BitMap)は、UNIXのX Window SystemのGUIで使われるモノクロ2値の情報をテキストで表現したビットマップです。
XBMのデータは、以下のようにビットの並びを16進数で表現します。

tkinter26-0

 

XBMを読み込む

CanvasウィジェットでXBMを表示する前に、BitmapImageクラスでXBMデータを読み込みます。

■外部ファイルの場合
オブジェクト名 = tkinter.BitmapImage(file="ファイル名")

■プログラム内の場合
オブジェクト名 = tkinter.BitmapImage(data="定義名")

 

BitmapImageクラスのオプション

BitmapImageクラスのオブジェクトは、以下のオプションを使うことによって色を変えることができます。

オプション名 内容
foreground 前景色(オンのピクセルの色)。デフォルトは黒
background 背景色(オフのピクセルの色)。デフォルトは透過

 

CanvasウィジェットでXBMを表示する

CanvasウィジェットでXBMを表示するメソッドは、通常の画像と同じように create_image()を使います。
XBMはビットマップですが、create_bitmap()ではエラーが発生して表示できません

オブジェクト名.create_image(座標オプション)

 

CanvasウィジェットにXBMを表示するプログラム

CanvasウィジェットにXBMを表示するプログラムは、以下のようになります。
今回使用したXBMのサイズは、40x40ドットです。
表示するイメージは、幅、高さ、データの配列を定義して、トリプルクォート(""")で囲みます。
なお、BitmapImageクラスでXBMを読み込む前に、必ず tkinter.Tk()で画面を作成する必要があります

プログラムを実行すると、以下のような画面が表示されます。

tkinter26-1

37行目のBitmapImageに、以下のような前景色と背景色を設定すると色を変更できます。

tkinter26-2

 

 

-PROGRAM, PYTHON
-