Amazon

2020年10月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

最近のトラックバック

無料ブログはココログ

« 簡易ランチャーの作成 その4 (C# バックグラウンドでキー入力を取得する) | トップページ | VisualStudioExpress2013 for WindowsDesktopをインストールする »

2013年12月 8日 (日)

簡易ランチャーの作成 その5


ランチャー作成の五回目です。今回はランチャーを終了する為の機能を
実装します。今回で簡易ランチャーとしての実装は最終回としたいと思います。

・簡易ランチャーの作成シリーズになっています
  簡易ランチャーの作成 その1
  簡易ランチャーの作成 その2
  簡易ランチャーの作成 その3
  簡易ランチャーの作成 その4
  簡易ランチャーの作成 その5
  ソース全体は記事の最後にソリューションごと掲載してあります。



さて、今回のプログラムがランチャーとして機能する為には以下の機能が必要です。

・起動した時にバックグラウンドで動作する
  これは今でも一応できています。

・タスクトレイにアイコンを表示して常駐を解除する
  これは現在実装できていません(デバッガが無いと終了できない)

と、言う訳で簡易ランチャーをタスクトレイに常駐して、このメニューから常駐を解除
できる様に修正します。

1. WindowsFormにNotifyIconを追加する

  Form1のデザイナを開いて、ツールボックスからTextbox等を追加する要領でNotidyIconを
  配置するだけです。続いて、右下のタスクトレイに表示するIconを設定します。
  NotifyIconのプロパティから表示するIconを設定します。
  今回はフリーでアイコンを配布しているサイトから星型のアイコンをもらって来ました。

  たったこれだけで、右下のタスクトレイにアイコンが表示されます。

L_5_1




2. ContextMenuStripを追加する

  続いてタスクトレイに表示されたアイコンを右クリックした時にメニューが
  出る様にします。
  まず、ツールボックスからContextMenuStripをNotidyIconと同様にForm1に配置します。

L_5_2



  続いて、ContextMenuStripにToolStripMenuItemを追加します。これはGUIから
  以下の様に追加すればできます。追加したContextMenuStripをクリックすれば、
  追加方法は判るかと思います。ここでは一旦"END"と入力してからTEXTを"終了"に
  修正しました。
  (最初に"終了"と入力すると自動生成されるクラス名が"終了ToolStripMenuItem"となって気持ち悪いからです)

L_5_3



  これで、タスクトレイに表示されたアイコンを右クリックするとメニューがでるはずです。


3. "終了"を選択したら簡易ランチャーを終了する様にする

  先ほど作成した"終了"メニュー(ENDToolStripMenuItem)をダブルクリックすると、
  メニュー押下時のイベントメソッドがForm1クラスに作成されます。



今回のソースはこちらです。

たったこれだけで、タスクトレイにアイコンを表示して、終了メニューを作成する事ができました。
これで簡易ランチャーは完成です。基本的な機能は実装できたと思いますので、プロトタイプとしては
十分だと思います。勿論、このままでは色々機能が足りませんが、以下の様な機能は自分の趣味に合わせて
実装していけば自分好みのキーボード入力タイプのランチャーを作成できると思います。

  ・起動するアプリケーションの指定機能
  ・マウスで選んでもアプリケーションを起動する
  ・アイコンなどデザイン全般の修正

さて、もともと自分好みのランチャーを作ろうと思って開始した今回の記事。今からが頑張るところの
はず…。時間を見つけてランチャーを作成してみたいと思います。







さて、最近継続的インテグレーションと言うか、所謂CIとやらに関心があるのですが、C#だとWindowsが
ほぼ必須なのがちょっと苦しいです。別サーバを作ろうと思うと新しいPCとWindowsのライセンスが
必要になってしまうのでお財布にも厳しいし、PCの場合RaspberryPiと比べると電力も消費します。
この辺りはJavaだと色々とやり易そうです。










« 簡易ランチャーの作成 その4 (C# バックグラウンドでキー入力を取得する) | トップページ | VisualStudioExpress2013 for WindowsDesktopをインストールする »

C#」カテゴリの記事

コメント

初めまして。
こちらの記事をとても興味深く見させていただきました。
私は学生でして、作品にてランチャーを作りたいと思い、色々調べているうちに当ブログを見つけコンタクトをとっている次第です。
同じようにc#で実装を考えているのですが、まだ触りの部分で詳しい知識が乏しい状況です。
今後、もっと知識をつけ、さらに便利かつデザインも良いランチャーを作成したいと考えています。
今後も当ブログを参考にさせて頂きます。
応援しております

コメントありがとうございます。こんなサイトですが、見ていて下さる方がいると思うと非常に嬉しいです。

上記コメントのwisteria0です。こんにちは。
私個人の意見としては、とても見やすいサイトで良いと思います!

話は変わりますが、AppleのIPhoneで利用できる、AssistiveTouchというもの、ご存じでしょうか。
私はこちらをwindowsの環境下で、あそこまでのクオリティとは言わずとも、似たようなシステムをC#で
実装できないかと考えております。
ご助言いただきたいのですが、c#での実装は可能だと思いますか?
私が多少なり触れるのがc#なので今例に挙げているのですが、他に良い開発言語があるのでしょうか・・・

すみません、自分はiPhoneユーザではないのではっきりとした回答は出来かねますが…。
ぐぐってみたイメージですと、できるできないで言うとできると思います。しかし、これをPCで実現する事には意味がなさそうな気はします。
C#を使ってAndroid等で実現…と、言う話だとすみません、Androidがそこまでの拡張を許しているのか不明です。。。

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: 簡易ランチャーの作成 その5:

« 簡易ランチャーの作成 その4 (C# バックグラウンドでキー入力を取得する) | トップページ | VisualStudioExpress2013 for WindowsDesktopをインストールする »