2

我试图在 Delphi 2009 中的打开、保存、查找和打印常用对话框中添加帮助按钮。

我认为正确的方法是在对话框的 Options 属性中将 frShowHelp 设置为 true:在此处输入图像描述

但是当我这样做时,对话框的出现与没有该选项的情况相同,例如:在此处输入图像描述

我希望在“取消”按钮下方看到一个“帮助”按钮,但它不存在。

我正在 Windows Vista 下开发。Microsoft 是否消除了将“帮助”按钮添加到其常用对话框的功能,还是我做错了什么?

4

1 回答 1

3

查找对话框

包括在内frShowHelpOptions会出现帮助按钮。很难理解为什么这对你不起作用。

打印对话框

包括在内poHelpOptions会出现帮助按钮。

文件对话框

现在,当 Vista 推出时,这些确实发生了变化。新对话框没有内置显示帮助按钮的功能。

您始终可以通过设置Dialogs.UseLatestCommonDialogsFalse. 如果你这样做,你可以设置ofShowHelpHelpContext

如果可用,您应该更喜欢使用新对话框。对于那些你需要用来IFileDialogCustomize添加帮助按钮的对话框。

在 Delphi 中,对于 Vista 及更高版本,您需要直接使用TFileOpenDialogorTFileSaveDialog而不是TOpenDialogand TSaveDialog。您将创建对话框对象,然后从属性中请求IFileDialogCustomize接口。Dialog执行此操作的最佳位置是在DoExecute对话框控件的情况下。

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 回答