目次をつくったよって話

自分の記事を見返すことが増えたので、目次をつくりました。

目次

案外書いたな!!

左のリンクのところに足しておきましたのでご利用ください。

では、短いですが今回はこの辺りで。

続きを読む

リングノートの話

ひとあし先に仮面ライダーチェイサー見てきました。
もしかしたら今までみたVシネマの中で一番おもしろかったかもしれない…!円盤はよ!!
ゴースト本編も気になる!!




文房具ネタが続きますね。

いや、単に私がリングノートが好きらしいって話なんですが。

らしい、というのは、それに気がついたのが去年の就職活動中だったからです。


それまでリングノートって、あのリング部分が書くとき痛い! とか かばんの中でぶっこわれそう!

という理由でちょっと敬遠してきてたんですが、

高校の…なんだっけ、多分無遅刻無欠席で賞みたいなやつでリングノートをもらったんですね。

B6くらいの大きさのやつ。

まぁそのあと数年放置してたんですが。

で、就職活動にあたってなんかメモとらなきゃ!となったとき、

大学ノート持ってくのもなぁ…あーこれでいいやとりあえず!

とかばんに放り込んできたこのノートがとても便利だった。



半分に折りたたむとコンパクトだし、机がなくても字が書きやすい。

バインダーを買うほどの意識の高さはなかった…。

もう割り切って右側にしか字を書かないことにしたから、リングも別に気にならない。

この使い方してたら、見方が百八十度変わってリングノート好きな人になってしまった。

いやぁ、人生どこにターニングポイントがあるかわからないですね。



現在インターンで毎日日報書かなきゃいけないので、家にずっと置いてあった別のリングノートを導入しました。

右ページに日付、そしてやった作業を書きます。

左ページはメモページとして使ってます。

計算式書いたり、修正箇所のToDoリストにしたり、明日やることのメモにしたり。

読み返してみると案外左ページも埋まってますね。

自分にとってこの使い方とても当たりだったので、これからも愛用していきたい。

ちまちまノート書いてても怒られない環境で生きていけるといいんだけど。



もうすぐ春なので、今年は調子に乗って手帳もリングノートタイプにしてみました。

リングノートの手帳ってこれとあと無印くらいしか見つからなかったけど…。

ロルバーンダイアリーM


もうちょっと見やすい感じでもよかったかなーと思いつつ、リングノート少ないから贅沢は言えない。

さっそくToDoリスト作ってます。

左ページは例によってメモです。

これまでずっと手帳を有効活用できてなかったけど、はてさて今年は続けられますかねー。

日報用リングノートも探さなきゃなーかっこいいのがいいなー。

あとToDoリストといえば

スタンプとかもあるんですね。

ちょっと気になる。

終わったリストに「済」つけたいから、小さいスタンプ探してみようかなぁ。

特撮のスタンプとかないかなぁ。

おもしろい文房具あると、ちょっとやる気出るもんな。



それでは、今回はこの辺りで。

続きを読む

ボールペンの話

ひらかたパーク最高ですありがとうございますありがとうございます。

さて、タイトル通りボールペンについての話。

世の中いろんなボールペンがあってその道のマニアもいるような世界ですが、

私もお気に入りのボールペンがあります。



三菱鉛筆 uni-ball Signo キャップ式 極細シリーズ


手持ちのやつ



ゴーストみたいなカラーリング

もうこれが好きで好きで。

市場(?)ではジェットストリームが人気みたいですが、私はここ五年くらい多少浮気しつつもずっとこれです。

履歴書も全部これで書いたよ相棒。


小学校の頃からペンって苦手だった。

鉛筆・シャーペンと違って書き直せないと思うと緊張してしまって…。

しかも当時持ってたボールペンって

「赤い羽根共同募金書道コンクール 参加賞」

とか

「青少年健全育成委員会 こころの電話相談室」

とかのロゴが入ったチープなものばかりで、つまりすぐダマができて書きにくくなってしまうわけです。

※ロゴは適当なのであしからず。別に持ち上げるつもりも貶すつもりもないっす。
(ところで「貶す」をずっと「とぼす」って読んでたしにたい…「けなす」なんだね。そして「貶める」は「おとしめる」なんだね日本語難しい)

だからずっと「ボールペン=書きにくいもの」って認識があって、丸付けの赤ペンくらいしか使ってなかったんですよね。
インクのあのなんとも言えない匂いは嫌いじゃなかったが。

でもこのSigno極細シリーズに出会ってからはボールペンへの抵抗がかなり減ったんだよなー。

いまやシャーペンより使用頻度が高い。


書き心地がなめらか、かつキャップ式だからバネとか搭載してるノック式と違ってめちゃくちゃ軽いんですよね。

極細シリーズは本体自体がスリムだし。

超極細シリーズの0.28という細さがとてもいい。

そしてインクが最後まで使いきれる!



今まであらゆるペンを最後まで使いきれずに乾燥させてきた身としては感動が大きい。

ただ、色によってインクの配合が微妙に違うのか、使いきれなかった色もあったんだよな。

いろいろ含めたわたくし茂吉の個人的感想としては

黒×0.28:書き味最高。最後まで使いきれる。

黒×0.38:書き味最高。最後まで使いきれると思うけどその前にどっかいってしまった…。大きめの履歴書に使ってた。

オレンジ×0.28:書き味最高。最後まで使いきれる。赤シートで消える。

青×0.28:ちょっとダマができる感じ。最後まで(なんとか)使い切った。

青×0.38:私が使ってた個体がよくなかったのかインクが先端からちょっと漏れてて毎回ティッシュで拭いてた。頑張って最後まで使い切りたい。

赤×0.28:書き味がりがりするのでインクの出がちょっと不安定。寒いと出ない。

赤×0.38:志半ばで(以下略)

緑×0.28:書き味がちょっとガリガリする感じ、かつ出なくなることがあったので書きなぐりメモ用に。最後まで使いきれたけどメインにはならないかな。

という感じでした。
もちろん、個人的な感想ですけどね。

公式のラインナップ見てるとまだカラーバリエーションがあるので、もっといろいろ試してみたいですね。

今ノートのピックアップカラーがオレンジだけだから、次はライムグリーンとかそのあたりに挑戦したい。

水色入れてスペクターぽくするのもいいな。

あと、ちょっぴりマイナーなのか小さい本屋とかだと置いてないのが残念。

いいペンなのに…。



あ、ちなみにシャーペンは長年クルトガ(0.3)愛用してます。

こっちはあんまりこだわりないんだけどね。

それでは、今回はこの辺りで。







続きを読む

C# MouseEnterとMouseHoverの違いについて サンプルコード


力技の1号、楽しみですね

今回はマウスイベントの中の

MouseEventMouseHoverについて検証したときのコードを載せます。
とりあえず一度実行してみてください。

FormSample3.cs


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace myapp
{
class FormSample3{
public class Form1 : Form
{
private Panel panel1 = new Panel();
private Panel panel2 = new Panel();

//各コンポーネントの初期化
private void InitializeComponent(){
//Form
this.Size = new Size(300,300);
this.Load += new System.EventHandler(this.Form1_Load);

//panel1
this.panel1.Size = new Size(100,100);
this.panel1.Location = new Point(10,10);
this.panel1.BackColor = Color.White;
this.panel1.BorderStyle = BorderStyle.FixedSingle;
this.panel1.MouseEnter += new EventHandler(mouseEnter);
this.panel1.MouseLeave += new EventHandler(mouseLeave);

//panel2
this.panel2.Size = new Size(100,100);
this.panel2.Location = new Point(10,150);
this.panel2.BackColor = Color.White;
this.panel2.BorderStyle = BorderStyle.FixedSingle;
this.panel2.MouseHover += new EventHandler(mouseHover);
this.panel2.MouseLeave += new EventHandler(mouseLeave);

//システムで設定されているマウスホバー時間(初期設定では400)
Console.WriteLine("MouseHoverTime:" + SystemInformation.MouseHoverTime + "(msec)");
}
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender,EventArgs e)
{
this.Controls.Add(panel1);
this.Controls.Add(panel2);
}

//マウスイベント処理
private void mouseEnter(object sender, EventArgs e)
{
this.panel1.BackColor = Color.Red;
}
private void mouseHover(object sender, EventArgs e)
{
this.panel2.BackColor = Color.Blue;
}
private void mouseLeave(object sender, EventArgs e)
{
this.panel1.BackColor = Color.White;
this.panel2.BackColor = Color.White;
}
}
static void Main(){
Application.Run(new Form1());
}
}
}


実行すると、フォーム上に矩形のパネルが2つ表示されます。



この上にマウスを載せると、





パネルの色がそれぞれ変化します。

マウスカーソルの代わりにおほしさまを乗せてあります。



さて、このパネルの色の変化の仕方に少し違いがあるのですが、お気づきでしたでしょうか。

コードを見てみると、

this.panel1.MouseEnter += new EventHandler(mouseEnter);


this.panel2.MouseHover += new EventHandler(mouseHover);


HoverとEnterイベントがそれぞれに割り振ってあります。

違いはイベントが発生するタイミングです。



Enterはコントロール(今回はpanel1)にマウスカーソルが乗った瞬間にイベントが発生します。

対するEnterはコントロール(今回はpanel2)にマウスカーソルが乗った状態で、一定の時間が経過すると発生します。

なので、すごい速さでpanel2の上を通過すると色が変わりません。

あれです、デスクトップアイコンとかにカーソル乗せたとき

Enterのタイミングでアイコンの縁取りの色が変わり
Hoverのタイミングでアイコンの詳細情報がじわっと浮かび上がってくる

と考えるとわかりやすいです。



MouseHoverTime

MouseHoverイベントを利用するときの待ち時間はどこでわかるかというと、

SystemInformation.MouseHoverTime


このプロパティで知ることができます。
このサンプルでは、MouseHoverTimeの値をコンソール(コマンドプロンプト)に表示しています。

このプロパティは読み取り専用なので、プログラムからは変更することができません。

ユーザがシステム側から任意に変更できるようです(未検証)。

参考:Windows 7のWindows Aeroによるタスクバーのサムネイル表示を高速化する


ちなみにデフォルトは400、つまり0.4秒です。
数字で聞くと短く思えますが、実際に操作していると結構いらっとしますね。

即時に反応させたいイベントのときはMouseEnter、
じっくり(?)反応させたいイベントのときはMouseHoverと使い分けていきましょう。



それでは、今回はこの辺りで。

C# MouseMoveイベントサンプルコード

こんばんは。
やっぱり腹式呼吸ができません。

さて、C#の超簡単なサンプルコードを書いてみました。

FormSample1.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace myapp
{
class FormSample1{
public class Form1 : Form
{
private Label label = new Label();

private void InitializeComponent(){
//Form1
this.Size = new Size(300,300);
this.MouseMove += new MouseEventHandler(mouseMove);

//label
label.Text = "start";
label.Location =new Point(150,150);
label.MouseMove += new MouseEventHandler(mouseMove);

this.Load +=new System.EventHandler(this.Form1_Load);
}
public Form1(){
InitializeComponent();
}
private void Form1_Load(object sender,EventArgs e)
{
this.Controls.Add(this.label);
}
private void mouseMove(object sender, MouseEventArgs e){
//取得した座標をクライアント座標に変換
System.Drawing.Point sp = System.Windows.Forms.Cursor.Position;
System.Drawing.Point cp = this.PointToClient(sp);
int x = cp.X,y = cp.Y;

//位置判定
if(x >150){
label.Text = "→";
}else{
label.Text = "←";
}
this.Text = (x.ToString() +"," + y.ToString());
}
}
static void Main()
{
Application.Run(new Form1());
}
}
}


実行すると





Form上のマウスの位置に応じて矢印が左右に動きます。

マウスカーソルがキャプチャできなかったので代わりにお星さまつけときました。

また、タイトルバーの部分にはForm上のマウスカーソルの座標x,yが表示されています。

それだけのプログラムです。

でもちまちま動く矢印めっちゃかわいい……こう、なんかこねくりまわしたくなるかわいさ……


では、ポイント。

MouseMove


これは、Controlクラスがもっているイベントです。
Formとかボタンの上でマウスカーソルが動いたときに発生します。
ポイントは、ラベルとフォーム両方に同じイベントが関連付けられていることです。
フォームだけでいいんじゃね? って思うかもしれませんが、そうするとラベルの上でだけMouseMoveイベントが発生しません。
あくまで、そのコントロールの上を直接マウスカーソルが動いたときにだけ反応します。

ふたつめ。

System.Drawing.Point sp = System.Windows.Forms.Cursor.Position;
System.Drawing.Point cp = this.PointToClient(sp);
int x = cp.X,y = cp.Y;


マウスイベントが発生したとき、Cursor.Psitionがもらってくるのはウィンドウ画面そのものの座標です。
しかし今回必要なのはマウスがフォームのどこにあるかです。
そこで、画面の座標をフォーム上の座標(クライアント座標)に変換してあげます。

参考:画面座標をクライアント座標(コントロール上の座標)に変換する


以上、超簡単なMouseMoveイベントのサンプルでした。

今度は矢印じゃなくて、右向きのキャラ画像左向きのキャラ画像でやってみたいです。


では、今回はこの辺りで。