2

Delphi 2009の[開く]、[保存する]、[検索する]、[印刷する]の一般的なダイアログにヘルプボタンを追加しようとしました。

それを行う適切な方法は、ダイアログのOptionsプロパティでfrShowHelpをtrueに設定することだと思いました。ここに画像の説明を入力してください

しかし、そうすると、ダイアログはオプションなしの場合と同じように表示されます。例:ここに画像の説明を入力してください

[キャンセル]ボタンの下に[ヘルプ]ボタンが表示されることを期待していますが、表示されていません。

私はWindowsVistaで開発しています。Microsoftは、一般的なダイアログにヘルプボタンを追加する機能を削除しましたか、それとも私は何か間違ったことをしていますか?

4

1 に答える 1

3

ダイアログを検索

に含めるfrShowHelpOptions、ヘルプボタンが表示されます。それがうまくいかない理由を理解するのは非常に難しいです。

印刷ダイアログ

に含めるpoHelpOptions、ヘルプボタンが表示されます。

ファイルダイアログ

Vistaが導入されたとき、これらは変更されました。新しいダイアログには、ヘルプボタンを表示する機能が組み込まれていません。

Dialogs.UseLatestCommonDialogsに設定すると、いつでも従来のXPダイアログに戻すことができますFalse。そうすればofShowHelp、設定HelpContextなどができます。

ただし、新しいダイアログが利用できる場合は、それを使用することをお勧めします。IFileDialogCustomizeこれらのダイアログでは、ヘルプボタンを追加するために使用する必要があります。

Delphiでは、Vista以降では、とではなく、TFileOpenDialogまたはを直接使用する必要があります。ダイアログオブジェクトを作成してから、プロパティからインターフェイスを要求します。これを行うのに最適な場所は、ダイアログコントロールの場合です。TFileSaveDialogTOpenDialogTSaveDialogIFileDialogCustomizeDialogDoExecute

procedure TForm1.FileOpenDialog1Execute(Sender: TObject);
var
  FileDialogCustomize: IFileDialogCustomize;
begin
  FileDialogCustomize := FileOpenDialog1.Dialog as IFileDialogCustomize;
  FileDialogCustomize.AddPushButton(0, 'Help');
end;
于 2011-10-30T08:18:31.370 に答える