Delphiで作ったフォームをDLL化して、他のアプリ(これもDelphiで作成)で使用したいと思っています。
DLL化したフォームをShowModalで呼び出すと、タスクバーに新たなバーが現れます。
また、DLL化したフォームが前面にある状態で、メインフォームをクリックした場合、
DLL化したフォームは背面に移動しないので問題ないのですが、タスクバーに表示されているメインフォームのバーをクリックすると、メインフォームが前面にきて
DLL化したフォームは背面に移動してしまいます。
DLL化したフォームを、同じプロジェクト内にあるサブフォームと同じような動作にすることは可能でしょうか?
よろしくお願いします。
P.S.
フォームが起動されるWindowsAPIは多くありますが、これらは、新しいタスクバーも現れないし
前面、背面が変ることもありません。
Delphiで作成したDLL化したフォームでも何か方法はあると思うのですが...。
DLL側の Application.Handle に呼び出し側の Application.Handle を
割り当てて下さい。
ありがとうございました!!望んでいた通りの動作です。
TApplication.Handle のヘルプに今回のことが書いてありましたね。
それに、WindowsAPIでハンドルが引数に入っているのは、このためでもあるのですね。
大変勉強になりました。
ありがとうございました。
ツイート | ![]() |