2ドット目の空隙(画像赤線部分)

kcha2005-08-31

元ネタはここから。
http://japanese.joelonsoftware.com/uibook/chapters/7.html
話を端折って結論から先に言ってしまうとWindowsツールバーは画面端2ドットに隙間があるため、勢い余ったマウスはうまくスタートボタン(または起動中のタスクボタン)に上手く重なることが出来ない、これはユーザビリティとしては下の下じゃないか、という話だ。
「やはりWindowsはXX(←見苦しい表現のため検閲・変換)でYY(←検閲はいりました)でZZ(←検(r)だ!」と扱き下ろしたいが為に、実際に試してみたところ、なんだ、期待はずれにもきちんとスタートボタンに反応するじゃないか。(画面端でクリックするとマウスカーソルが2ドットずれてボタン上に移動している。)
なんだ詰まらん。と、思っていた矢先に見つけた。画像赤線の部分である。画面下から2ドット目の1行すべて、これこそ正に空隙。

というわけで今こそ声を大きくして言おう。

「やはりWindowsはXXでYYでZZだった、グワハハハ」

(ちなみにツールバーを左部、上部など、あるいはXPの本チャンのスタイルではこの空隙は存在しなかった。確認したのはXPのHome/Professionalでのクラシックスタイルのみ。)
以上。
…大して面白くないアホな話でごめんなさい。

(追記)
なんとなく、こんな理由なんじゃないかな、と推測してみる。

if( (Mouse_Y <= 1) OR ((画面高さ-1) <= Mouse_Y) ){
    マウスをボタンの上とみなす();
}

この条件でマウス座標が0オリジンならば下2ドットでの隙間も説明がつく。
(つい先日までGUIなツール仕事で作ってたので少し反応過剰)

(更に追記)
案の定、右側でも同現象発生。(画面幅-1) <= Mouse_X か?