Quantcast
Channel: C#タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9747

iconファイルを作れない環境でNotifyiconを使いたいときの忘備録

$
0
0

Visual Studioもない、ネットにも繋がらない、windowsの標準アプリしかない、そんな環境でちょっとしたデスクトップアプリをC#で作りたいとき。

デフォルトのwindows10だとiconファイルが作れない

ペイントだとiconファイルで保存できないので、Notifyiconを表示できない事象が発生。

Windows10でアイコンファイルを作成する方法
上記を参考にiconファイル作成

  1. ペイントで画像を作成し、32×32の24ビットマップ形式で保存
  2. ファイルの拡張子をbmp⇒iconに変更
  3. 以下のようにNotifyIconの作成
form.cs
this.notifyIcon=newNotifyIcon(){Icon=newIcon("作ったアイコン画像.icon"),Visible=true,Text="sample"};

エラー発生

System.ArgumentException: 'Argument 'picture' must be a picture that can be used as a Icon.'

ビットマップファイルををコード内でiconファイルに変換

ひとまず、拡張子をbmp⇒iconに戻す。

form.cs
varbitmap=newBitmap("作ったアイコン画像.bmp");this.notifyIcon=newNotifyIcon(){Icon=Icon.FromHandle(bitMap.GetHicon()),Visible=true,Text="sample"};

タスクトレイに作成したアイコンが表示される。

まとめ

iconファイルを作れない環境で、Notifyiconを表示することができた。
bmp⇒iconへ変換するツールを作ってもいいかもしれないけど
いちいち変換が面倒なのでbmpでもアイコン表示できるよう対応したほうが楽なのかも。


Viewing all articles
Browse latest Browse all 9747

Trending Articles