Tkinterでキャンバスアイテムを表示・非表示にする方法
Canvasウィジェットは、Tkinterの中でも特に多用途なウィジェットのひとつです。画像の追加や図形の作成など、GUI(グラフィカルユーザーインターフェース)のデザインに幅広く活用されています。さらに、Canvasウィジェット自体の中に他のウィジェットを配置することも可能です。このようにキャンバス内に配置された要素は、一般的に「キャンバスアイテム(Canvas Items)」と呼ばれます。
ボタンの操作などでキャンバスアイテムを表示したり非表示にしたりしたい場合は、itemconfig(id, state) メソッドの state プロパティを使用することで簡単に実現できます。
実装例
以下の例では、キャンバス上に画像を配置し、ボタンをクリックすることでその画像の表示・非表示を切り替える処理を実装します。
# 必要なライブラリをインポート
from tkinter import *
from tkinter import ttk
from PIL import Image, ImageTk
# tkinterフレーム(ウィンドウ)のインスタンスを作成
win = Tk()
# ウィンドウサイズを設定
win.geometry("700x350")
# 真偽値をグローバル変数として宣言
show = True
def on_click():
global show
# 画像が非表示かどうかを判定
if show:
canvas.itemconfig(1, state='hidden')
show = False
else:
canvas.itemconfig(1, state='normal')
show = True
# Canvasウィジェットを追加
canvas = Canvas(win, width=440, height=300)
canvas.pack()
# キャンバスに画像を追加
img = ImageTk.PhotoImage(file="bird.jpg")
canvas.create_image(200, 200, image=img, anchor=CENTER)
# キャンバスアイテムの表示/非表示を切り替えるボタンを追加
ttk.Button(win, text="Show/Hide", command=on_click).pack()
win.mainloop()実行結果
上記のコードを実行すると、画像と「Show/Hide」ボタンが配置されたウィンドウが表示されます。ボタンをクリックするたびに、on_click関数が呼び出され、itemconfigメソッドによって画像の状態が「hidden(非表示)」と「normal(表示)」の間で切り替わります。

実際にボタンをクリックして、画像の表示・非表示が切り替わることを確認してみてください。
-
Python Tkinterでキャンバス上の画像を中央に配置する方法
Tkinterを使ってGUIアプリケーションを開発している際、Tkinterのキャンバス(Canvas)上に画像を読み込みたいケースはよくあります。本記事では、その画像をキャンバスの中央に配置する方法を解説します。anchorパラメータとはデフォルトでは、キャンバスは画像を自身の幅と高さに従って配置します。しかし、anchor(アンカー)パラメータに方向の値を渡すことで、画像の位置を任意の方向(N:北、S:南、E:東、W:西、NS、EWなど)に操作できます。アンカーは画像関数と一緒に呼び出されるパラメータで、キャンバス内における画像の方向や位置を定義します。このanchorパラメータを活用すれ
-
Windows 10で特定のコントロールパネル項目を表示・非表示にする2つの方法
コントロールパネルは、Windowsのシステム設定を構成するための機能を提供するコンポーネントです。以前のバージョンのOSでは、今でもコントロールパネルが標準の設定画面として使われています。コントロールパネル内の項目は、標準ユーザー向けに柔軟にカスタマイズすることが可能です。管理者権限を持つユーザーなら、任意の項目を非表示にしたり、再び表示させたりできます。頻繁に変更されたくない設定を隠しておくには、これが最も効果的な方法です。この記事では、コントロールパネルの項目を非表示または表示するための手順を詳しく解説します。特定のコントロールパネル項目を非表示・表示するコントロールパネルの項目をカスタ