在Visual Foxpro中,如何在构建EXE时将日期格式{^yyyy-mm-dd}更改为{dd/mm/yyyy} ?



在Visual Foxpro中,如何在构建EXE文件时将日期格式{^yyyy-mm-dd}更改为{dd/mm/yyyy} ?

Vfp中有许多全局设置,Set Date是其中之一。与许多其他设置一样,它"限定在当前数据会话范围内"。这样,当你启动Vfp IDE,或者在IDE外启动自定义myProject.EXE时,您将获得所有默认设置,即American

当你的Exe启动时,它会运行项目的"主目录"中的代码。成员,可以是PRG代码文件。你可以在这里加上几行,比如

Set Date YMD && yymmdd date, or:
Set Date DMY && ddmmyy
Set Century On && four digit year YYYY
Set Mark To "/" && DD/MM/YYYY

有几个进一步的设置,如Set Hours和相关的Set SysFormats On,这是一个"all-in-one";并且意味着或多或少地接管当前的Windows O/S区域设置。SET SYSFORMATS的作用域是当前的数据会话,就像SET DATE一样,所以当你创建一个新的Data Session时,你需要再次运行该代码,比如当你运行一个具有属性DataSession=2的Form时,或者当你创建一个Session对象时。

注:您可以通过F1键在本地Vfp帮助文件中查找所有这些设置和对象属性。参见https://www.vfphelp.com/help/index.htm

为了补充Stefan的回应(这是完美的),我建议创建一个"环境";对象,您可以在其中定义所需的所有SET选项作为参数,并在所有表单/报表以及应用程序入口点中使用函数设置它们。

我们在我们的应用程序(1000+表单/报告)中这样做:

THISFORM.AddObject("oCusEnv", "CustomEnv")
THISFORM.oCusEnv.SetEnv()

使用THISFORM.AddObject()确保CustomEnv对象继承表单数据会话,因此SetEnv()中环境的更改将应用于表单私有数据会话。

注意:我们不使用DataEnvironment对象,如果你正在使用它们,我相信这将是发出任何SET语句的最佳位置,因为表单继承了DataEnvironment的数据会话。

相关内容

  • 没有找到相关文章

最新更新