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

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

C#: 付箋紙を移動するたびに位置を把握するには

      2016/06/11

[ad#top-1]
 
【第一回】付箋紙みたいにタイトルバーなし&タスクバー非表示にするには
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
【第四回】付箋紙をどのように増やすか考える
http://non-it-salaryman.blogspot.jp/2015/11/c_9.html

今回で第五回目となります。

付箋紙アプリの重要な機能として1つとして、画面のどの位置に置かれているかを保持しておいて、起動時にその位置に配置させなければなりません。そのため、移動するたびに座標の数値をGETし保存する必要があります。

通常、付箋紙はマウスによって移動されます。そして、ドラッグして移動した後、「マウスアップ」するときに新しい位置が決定されます。従い、「マウスアップ」時の座標を読み込んでデータファイルに書き込む、という流れをプログラミングするわけです。

具体的には、まずLabelをマウスアップしたときのイベントハンドラをセットします。(前回までLabelをフォーム名いっぱいに配置したことは説明済み)

label.MouseUp += new MouseEventHandler(MouseUpped);

で、マウスアップした際の動きは以下の通りです。

private void MouseUpped(object sender, MouseEventArgs e){
if(e.Button!=MouseButtons.Left) return;
long x = this.Location.X;
long y = this.Location.Y;

//ここにx,yの値を保存するプログラムを書く
}

次回はデータの保存方法を考えてみたいと思います。
 
[ad#ad-1]

スポンサーリンク

 - C#応用編