by Toshi » 2005年7月17日(日) 12:54
調べてみると、タスクバーをディスプレイの上に配置していたことが原因のようでした。
ちょうどタスクバーの高さが28ピクセルだったようです。
そこでタスクバーを左に配置すると、今度はタスクバーの幅の分だけ
ウィンドウがずれて表示されました。
もしかしたらSetWindowPlacement APIはタスクバーの部分を除いた
領域の中の座標を指定しなければならないのかと思います。
おそらくタスクバーの位置が右や下ではこの現象は発生しないはずです。
いままでディスプレイ座標と考えていたのが間違いでした。
するとこの現象を回避するにはタスクバーの位置と幅・高さを取得して
それに応じた処理をする必要があるみたいです。
今度はそれを調べたいと思います。
お騒がせしました。
調べてみると、[b]タスクバーをディスプレイの上に配置していたことが原因のようでした。[/b]
ちょうどタスクバーの高さが28ピクセルだったようです。
そこでタスクバーを左に配置すると、今度はタスクバーの幅の分だけ
ウィンドウがずれて表示されました。
もしかしたらSetWindowPlacement APIは[b]タスクバーの部分を除いた
領域の中の座標[/b]を指定しなければならないのかと思います。
おそらくタスクバーの位置が右や下ではこの現象は発生しないはずです。
いままでディスプレイ座標と考えていたのが間違いでした。
するとこの現象を回避するにはタスクバーの位置と幅・高さを取得して
それに応じた処理をする必要があるみたいです。
今度はそれを調べたいと思います。
お騒がせしました。