使用VisualFoxPro的CommonDialogs控件

使用VisualFoxPro的CommonDialogs控件,第1张

使用VisualFoxPro的CommonDialogs控件,第2张

第3节常用对话框控件

如果你用过FoxPro的GETFILE()和PUTFILE()函数。你可能会对他们有些遗憾:

没有办法改变对话框的标题。
putfile()函数总是询问用户是否要覆盖现有文件。
当使用两个函数时。指定的路径必须存在,否则将显示错误消息。
以获得更大的灵活性。您需要使用与VFP 5一起发布的公共对话框控件(在COMDLG32中)。\WINDOWS\SYSTEM目录中的OCX)。这个控件被称为“公共对话框”,因为它可以显示文件。颜色。和打印对话框。所有这些对话框都比VFP的相同功能提供了更大的灵活性。比如说。在VFP中使用GETFONT()和GETCOLOR()函数时。你不能控制一切,比如非TrueType字体是否可用,或者用户是否可以自定义颜色。常用对话框中的字体和颜色对话框就有这个功能。

由于时间限制。在本章中,我们只关注文件对话框。如果你想了解更多关于颜色,字体和打印对话框。请参见ActiveX控件的帮助文件。请注意,通用对话框控件不会出现在帮助文件的目录页中。但是,您可以在选择控件后按F1键或在帮助索引中搜索“公共对话框”来找到它们。
方法

常见的对话框控件有五种方法,它们都没有参数:

ShowOpen()显示打开文件对话框;
ShowSave()显示保存文件对话框;
ShowPrinter()显示打印机对话框;
ShowFont()显示字体对话框;
ShowColor()显示颜色对话框。
在本章中,我们只使用前两种方法。
属性

以下是最常用的常用对话框控件的文件对话框的属性(有些属性也用于字体、颜色和打印机对话框);有关其他较少使用的属性的信息,请参阅它们的帮助文件:

错误:如果希望在用户选择取消时生成CancelError(错误号1429),请将此属性设置为. t,可以在控件的Error方法中轻松捕捉和处理错误。这是必要的,因为类似的VFP函数会返回一个特殊的值(通常是一个空单元格)来表示用户已经选择了取消,但是这些对话框不会返回值。
default text:如果用户没有输入扩展名,该扩展名将自动添加到用户输入的文件名中。
DialogTitle:对话框窗口的标题。
FileName:用于文件名的初始值,将其内容添加到从对话框返回的用户输入值中。如果不允许选择多个文件,或者只选择了一个文件,则文件名包含所选文件的完整路径和文件名。如果允许选择多个文件,并且用户选择了多个文件,则FileName包含所选文件的路径,在所选文件列表之前用分隔符将所选文件与所选文件分隔开(多个文件用分隔符分隔,但没有路径)。在Windows 95和NT 4中,分隔符是CHR(0),在Windows NT 3.51中,分隔符是空大小写。例如,如果用户从VFP的示例数据目录中选择三个表,文件名的内容可能是C:\ VFP 5 \ samples \ data customer . DBF orders . DBF for items . DBF”。有关将FileName分解为路径和不同文件名的信息,请参见SFFileDialog类的SetProperties()方法(稍后描述)。
FileTitle:如果不能选择多个文件,则返回所选文件的名称,不带路径。否则,返回值为空。
筛选器:可接受的文件描述。该筛选器有两个部分:用户看到的描述(例如,“数据库文件”)和这些文件的扩展名描述(例如,“*”。DBC”)。和描述由竖线(|)分隔。您可以提供由多个竖线分隔的多个过滤器。例如,“数据库文件| *。DBC |表格| *。DBF |所有文件| *。*".
FilterIndex:使用的默认筛选器。第一个过滤器属性为1。
Flags:此属性控制对话框的外观和行为。可用值见下文。
HelpFile:当用户单击对话框中的“帮助”按钮时使用的帮助文件的名称。
HelpCommand:该属性最常见的设置是(有关其他设置,请参见该控件的帮助文件)0x1(使用HelpContextID)、0x101(使用关键字)或0x105(使用某些关键字)。注意:符号0x是VFP 5的新函数,表示十六进制值。
HelpContext:当HelpCommand的值设置为0x1时,要显示的帮助文件中主题的HelpContextID。
HelpKey:当HelpCommand的值设置为0x101或0x105时,在帮助文件中查找的关键字。
InitDir:显示在对话框中的初始目录。
请注意,帮助中提到了另外两个属性Path和Drive,但它们并不存在。

Flags属性的行为类似于VFP MESSAGEBOX()的DialogBoxType参数;您可以根据需要添加任意多的不同值来组合其外观和行为。不幸的是,即使flag对于多种类型的对话框有相同的含义,它也可能有不同的值。

例如,对于颜色对话框,显示帮助按钮标志为0x8对于文件对话框,显示帮助按钮标志为0x10。

因为每个对话框的设置值都相当神秘,所以我创建了一个包含文件,名为COMMDLG。h来定义不同值的常数。要设置控件的Flags属性,只需添加要设置的设置值。

例如,要显示帮助按钮并覆盖警告,可以这样设置:

this . ocommondialog . flags = cnFILEDLG _ OVERWRITE+cnFILEDLG _ show help

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 使用VisualFoxPro的CommonDialogs控件

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情