非IT企業に勤める中年サラリーマンのIT日記

非IT企業でしかもITとは全く関係ない部署にいる中年エンジニア。唯一の趣味がプログラミングという”自称”プログラマー。

C#: 付箋紙をどのように増やすか考える

      2016/06/11

[ad#top-1]
 
このブログは

How would StickyNote be increased?
http://non-it-salaryman.blogspot.jp/2015/11/c-how-would-stickynote-be-increased.html

を日本語に起こし直したものです。

そして、

【第一回】付箋紙みたいにタイトルバーなし&タスクバー非表示にするには
http://non-it-salaryman.blogspot.jp/2015/10/c.html
【第二回】付箋紙みたいにどこを掴んでも移動できるようにするには
http://non-it-salaryman.blogspot.jp/2015/11/c.html
【第三回】付箋紙に文字を書き込む
http://non-it-salaryman.blogspot.jp/2015/11/c_3.html

に続いて、今回は第四弾となります。

付箋紙ソフトにとって必要な機能の1つに、付箋紙を自由に増やしていくことです。じゃあ、これをのどようにプログラミングしていくか、になりますが、これについては私自身2つのケースを考えています。

A) スタンドアロンモデル
最初のモデルは、複数の付箋紙を独立したタスクで立ち上げるという方法です。Sticky.exeというファイル名だとして、複数の付箋紙はすべてSticky.exeから新たに立ち上げるわけです。右クリックメニューで「新規」をい選んだら、次のように実行させます。

 Process p = Process.Start(“note.exe”);

重要なポイントは、付箋紙ソフトを起動する時に、データベースのレコード数だけ付箋紙を立ち上げることをやらなければなりません。データベースの最初のデータは自分に書き込みますが、2つ目以降はデータベースのIDを引数として添えて次のように実行します。

 Process p = Process.Start(“note.exe”, id);

B) 親子モデル
2つ目のモデルはマザーフォームが存在します。このマザーフォームは、透明で画面の外側に位置していますのでユーザー側から見えません。右クリックメニューで「新規」をい選んだら、マザーフォームに指令が行って、マザーフォーム上で次のように実行させます。

  new Sticky();

このモデルの特徴は、管理しやすいことにあります。付箋紙の数の管理、付箋紙間のデータの連携など。このモデルだとやりやすくなります。

AtoBどちらにするか現在悩み中・・・。
 
[ad#ad-1]

スポンサーリンク

 - C#応用編