VFP编程-关于日期显示的问题

数据库表(SQL数据库)中日期格式为短日期,即2013-11-4格式,VFP表单中日期控件用的是MS DATE AND TIME PICKER控件。当从表中获取日期这个字段显示到表单GRID控件中时,总是显示:
2013.11.2 12:00 AM
我在VFP中设置时间格式SET DATE TO ANSI/YMD等等都没用,改变的只是年月日格式,后面还是跟着12:00 AM这么个时间。

请问:如何避免后面这个时间的显示呢?注:我不要什么DTOC等转字符串功能,仅仅获取日期字段值来直接显示。

设置你加入的“MS DATE AND TIME PICKER"控件就行。

在VFP表单的“MS DATE AND TIME PICKER"控件上点鼠标右键,进入属性设置中,在”customformat“(自定义格式)中加入 yyyy/MM/dd 就行。

或者是在VFP表单的“MS DATE AND TIME PICKER"控件上点鼠标右键,在弹出的选项框最下面一项就是“MS DATE AND TIME PICKER"控件设置了,点击后进入设置。
把”Format“(格式) 属性值为改为 ”3- dtpCustom“ 自定义;
在最下面的”customformat“(自定义格式)中加入 yyyy/MM/dd
yyyy/MM/dd对应的是 年/月/日;
yyyy/MM/dd: hh:mm t对应的是 年/月/日 时:分 上午(下午)或AM(PM)
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-11-09
用函数DATE()直接获取就OK了,不用那么麻烦的。
想更文件点的话,自己做个函数或者麻烦点自己写个组合函数ALLT(STR(YEAR(DATE())))+“-"+ALLT(STR(MONTH(DATE())))+“-"+ALLT(STR(DAY(DATE())))+“-"

再来一个更好看的ALLT(STR(YEAR(DATE())))+“年"+ALLT(STR(MONTH(DATE())))+“月"+ALLT(STR(DAY(DATE())))+“日"
第2个回答  2013-11-04
你的控件显示的是日期时间型,当然就这样了,这和你的SET设置无关。
不明白仅仅获取日期字段值来直接显示,为什么不直接用文本框呢?

VFP编程-关于日期显示的问题
设置你加入的“MS DATE AND TIME PICKER"控件就行。在VFP表单的“MS DATE AND TIME PICKER"控件上点鼠标右键,进入属性设置中,在”customformat“(自定义格式)中加入 yyyy\/MM\/dd 就行。或者是在VFP表单的“MS DATE AND TIME PICKER"控件上点鼠标右键,在弹出的选项框最下面一项就是“MS ...

vfp编程输入1-7任意一个数字,输出对应的英文日期,如果输入的数字不在...
do case case n=1 ? "first"case n=2 ? "second"case n=3 ? "third"…… && 省略了一部分, 自己写吧 otherwise ? "输入错误"endcase

vfp做万年历日期问题
我学了一年的VF,虽然学校要求必须要过二级。但老师也说了,它的用处并不大。就算你的代码正确有时也运行不了,这个编程软件已经落伍了…

请教VFP关于display 和 list 的问题
加上off是不带记录号显示记录。否则 list 或 display 显示记录时都是带着记录号显示记录的。

VFP编程中如何输入规范的日期
在你的text控件中,使用inputmask属性就可以了

求救啊,怎么用VFP编程,输入日期,算出星期
使用dow()函数,根据返回的数值, 使用do case来输出星期几:如果使用cdow()可以直接返回星期的英文,比如monday

3道关于Visual FoxPro的简单问题求详解
type("x")这个函数的区别,它是测试x的类型,当然是 N 型。2.在Visual FoxPro中说明数组后,数组的每个元素在未赋值之前的默认值是__.F.___3.{^2002.02.01}+{2001.02.01}这个日期表达式为什么是错的?日期型数据就三种用法:日期1-日期2 日期+整数 日期-整数 所以上面式子是错误的。

在VF中如何将运行结果在屏幕显示的大一些
VF中无法调整,只能调整屏幕的分辨率(桌面空白处点右键-属性-设置-分辨率)

vfp编程问题,急!!!
第一题:楼上正确 第二题:for aa=1 to 9 ?round(rand()*79+1,0) && - 有说明如下:endfor 说明:不能用round(rand()*80,0),可能会出现0号 不能用int(rand()*80),可能出现0,且永远抽不到80 不能用int(rand()*79+1),永远抽不到80 可以用int(rand()*80+1),这个也正确...

在visual Foxpro中,显示一条记录的指令是什么?
DISPLAY STATUS 显示VisualFoxPro环境的状态 四、SET 设定命令 SET CONSOLE 激活或废止从程序中向VisualFoxPro主窗口或活动的用户自定义窗口的输出 SET DEFAULT 指定默认的驱动器、目录或文件夹 SET DEVICE 将@…SAY的输出结果定向到屏幕、打印机或文件 SET EXACT 指定比较不同长度两个字符串时,Visual...

相似回答