タスクバーの表示


ROAM  2006-07-23 07:12:34  No: 22717

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


ん?  2006-07-23 08:45:29  No: 22718

たしかコレ

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 10:15:37  No: 22719

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


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加