1

私は、stayontop フォームである form2 を呼び出すメイン フォーム (form1) を持っています。form2 は、stayontop フォームでもあるモーダル フォーム (form3) を呼び出します。form3 モーダル フォームが colordialog を呼び出すと、form3 の後ろにカラー ダイアログが開きます。

form3の前にカラーダイアログを開くには何を設定すればよいですか?

D2009を使用しています

ありがとう

4

1 に答える 1

1

Delphi(D2007 前後)ではExecute、親ウィンドウ ハンドルをパラメータとして受け入れるすべての標準ダイアログに対して、オーバーロードされたメソッドが導入されました。ダイアログを表示するように呼び出しを変更します。

if ColorDialog1.Execute(Handle) then
begin
  // Do whatever
end;

Handleこの場合、 を表示している最上位フォームのウィンドウ ハンドルになりますTColorDialog。別のウィンドウからダイアログを実行している場合は、代わりにステイ オン トップ フォームのハンドルを渡す必要があります。

ドキュメントはこちら(XE バージョンですが、D2009 にも適用されます)。

于 2011-04-14T22:59:12.030 に答える