アーカイブ

2012年 6月 25日 のアーカイブ

 こういうことなんだがね。

 MDIの子ウィンドウが親ウィンドウからはみ出ていた場合、タスクバーからのプレビューを取得出来ないという仕様をどうするか。例えば親ウィンドウを最大化した状態で作られた子ウィンドウは、親ウィンドウが元に戻されても大きいままで、プレビューがはみ出ることになるだろう。はみ出た部分はこのように真っ暗で良い物か。真っ暗以外に方法はあるのか。少なくともDelphiのMDIは、複数ある子ウィンドウのうち同時に1個しか最大化出来ないため、最大化してる1個以外の子ウィンドウは、裏で親ウィンドウからはみ出しているかも知れない。

 あと実際にタスクバーから子ウィンドウを選んで切り替えるのがうまく行かない。切り替わった直後の描画が一部変だったり、タブをクリックしても反応しなくなってたりする。もしくは、MDIが最大化でも最大化でも元の大きさでもないおかしな状態になってたりする。このタスクバーからの切り替えはMDIのためにあるはずなのに、やってみるとつくづくMDIとは相性が悪い気がしてならない。普通のMDIとは相性がいいんだろうか。DelphiのMDIと相性が悪いんだろうか。それともDelphiのMDIが気に入らなくて独自にやった偽MDIと相性が悪いんだろうか。

 どうにもならないことはいろいろあるんだけど、どうにもならないまま、とりあえず妥協して、おかしくても動くには動くって状態の実装になる。一応OSチェックも作ってやってるけど、Vista以前では起動すらしなくなるかもしれないし、動作確認できないのでそのことに気がつきもしないかも。