tcl/tk でアプリケーションアイコンを指定する
tcl/tk の GUI スクリプトでタスクバーに表示されるアイコンを指定する方法を探しました。
web でサンプルを探しましたが、殆どが Windows でのやり方でした。同じようにしてもうまく行きません。仕方がないので、マニュアルページを見ました。
はじめは、Windows のサンプルで使っていた iconbitmap で試しました。しかし、やり方が悪いのか駄目でした。ページを見ていたら、iconpoto というものもあるようです。
wm iconphoto window ?-default? image1 ?image2 …?
https://www.tcl.tk/man/tcl8.5/TkCmd/wm.htm
ラベルにアイコンを表示する時と同じ様に、イメージを読み込んでから、そのイメージを指定してみました。
image create photo app_ico -file アイコンファイル
wm iconphoto . app_ico
これでうまくアイコンが表示されました。なお、iconphoto は、Macintosh では何もしないと書いてありました。
本来、iconphoto はタイトルバーに表示するアイコンの設定のようですが、Raspberry Pi OS のデフォルトのウィンドウマネージャでは、タイトルバーにアイコンは表示されず、タスクバーに表示されました。
使えそうなので、まともなアイコンを作りました。Icon rainbow からベースとなるアイコンをダウンロードしました。ダウンロードした画像を編集して 32×32 の png 画像を作り、~/Pictures/icons/Radio.png に保存しました。そして、FM_Radio スクリプトの最後に次の内容を追加しました。
# アプリケーションアイコン
image create photo app_ico -file ~/Pictures/icons/Radio.png
wm iconphoto . app_ico

ディスカッション
コメント一覧
まだ、コメントがありません