タスクバーの表示


ROAM  2006-07-22 22:12:34  No: 22717  IP: 192.*.*.*

FormStyle=fsNormalのフォームを複数表示する場合、
メインフォームのみタスクバーに表示されますが、
その他のフォームもタスクバーに表示したい場合は
どのようにすれば良いでしょうか?

編集 削除
ん?  2006-07-22 23:45:29  No: 22718  IP: 192.*.*.*

たしかコレ

protected
  procedure CreateParams(var aParams: TCreateParams); override;


procedure THogeForm.CreateParams(var aParams: TCreateParams);
begin
  inherited CreateParams(aParams);
  aParams.ExStyle := aParams.ExStyle or WS_EX_APPWINDOW;
end;

編集 削除
ROAM  2006-07-23 01:15:37  No: 22719  IP: 192.*.*.*

ありがとうございます、ちょっと質問時と実装の内容が変わって申し訳ないの
ですが...
タスクバー上に表示は出来たのですが、タスクバー上でメインのMDIフォームと
別フォームを交互にクリックすると、10回目ぐらいでメインフォームがたまに
選択できなくなってしまいます。
フォームを直接クリックすると問題ないのですが、タスクバーの反応がたまに
おかしくなるようです。
試しにメインのMDIフォームに上記のコードを追加すると、動きは問題ないの
ですが、アプリケーション自体もタスクバーに表示されるので一つ余分に
表示されるような形になります。
アプリケーション自体のタスクバーを非表示にするか、上記のおかしな状態を
回避する方法のどちらかありますでしょうか?
環境はWinXPでDelphi7です。

編集 削除