2009-09-04 16 views
0

私はまだ私のWinFormアプリケーションをテストしようとしていますが、動的に作成するカスタムダイアログフォームはウィンドウツリーの子ウィンドウではないため(Win32 APIの意味で)、一部のテストツールは動作しません。私はSpy ++を使ってウィンドウをブラウズして検索しています。これらのフォームでFinderツールを使用すると、その一部はデスクトップウィンドウの直接の子として検出されます(メインウィンドウの階層外にあります)。それらがすべて1つのツリー内にあることを確認するにはどうすればよいですか?動的に作成されたフォームがウィンドウのプロセスツリー内の子ウィンドウになるようにするにはどうすればよいですか?

EDIT:明らかにすべてのウィンドウが見つかりますが、Spy ++の表示を常に更新する必要があります。

答えて

1

通常の(MDI以外の)子フォームは、デスクトップを親として持つトップレベルウィンドウです。したがって、明示的にSetParentを使用して変更しない限り(Win32 APIの意味では)子ウィンドウと見なされることはありません(ただし、まずFormを使用しないでください)。

なぜこの関係はテストツールと関係がありますか?

関連する問題