社区
Delphi
帖子详情
delphi中有日期控件吗?
night_cat
2004-07-05 03:39:32
各位在侠您好:
我想在输入日期时,点击edit1,自动弹出一个窗口供选择日期(包括年,月,日),我见过别的程序可以实现,只不过我没有发现这样的控件,我是delphi的菜鸟,帮帮我好吗?
在上,小弟先谢了!
...全文
1259
19
打赏
收藏
delphi中有日期控件吗?
各位在侠您好: 我想在输入日期时,点击edit1,自动弹出一个窗口供选择日期(包括年,月,日),我见过别的程序可以实现,只不过我没有发现这样的控件,我是delphi的菜鸟,帮帮我好吗? 在上,小弟先谢了!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
HWHuang
2004-07-05
打赏
举报
回复
可以在delphi中用qreport啦,和以前的版本一样!
night_cat
2004-07-05
打赏
举报
回复
介绍一个,当然要好用的!
我的报表并不复杂!
mmhhllRen
2004-07-05
打赏
举报
回复
第三方控件多的是。
night_cat
2004-07-05
打赏
举报
回复
其实delphi7里有一个报表工具,Rave
只不过不知道怎么的用的, 外语的界面看的我似懂非懂的,干脆是不懂得了!
谁能帮我啊!
wj964124
2004-07-05
打赏
举报
回复
fei19790920(饭桶的马甲) ,你也不要这么欺负楼主嘛!嘿嘿!
h2yang
2004-07-05
打赏
举报
回复
win32页中Tdatetimepicket
cctv6012cn
2004-07-05
打赏
举报
回复
Win32 页,DateTimePicker !!! 这个就是啦
night_cat
2004-07-05
打赏
举报
回复
即使这样,也不是我所想要的,我所想要的是在Edit中点击后,出现控件,供选择的那种!
night_cat
2004-07-05
打赏
举报
回复
我又了找了一篇文章,大家看看吧!
Delphi中的日期输入
日 期 输 入 虽 然 是 小 事, 但 却 几 乎 每 一 个 程 序 里 都 会 碰 到, 处 理 不 好 也 会 惹 出 许 多 麻 烦(2000 年 问 题 即 是 日 期 引 起 的 世 界 性 麻 烦)。 现 谈 一 谈 笔 者 在Delphi 编 程 中 对 日 期 处 理 的 一 些 经 验 和 感 受, 请 大 家 指 正。
---- 在 程 序 中 使 用 现 成 的 控 件 是 现 在 编 程 的 一 种 趋 势, 其 实,DateTimePicker 就 是 一 个 很 好 的 控 件, 关 键 是 如 何 灵 活 变 通 地 运 用。DateTimePicker 是Microsoft 向Windows95 通 用 控 件 库 新 添 的 控 件, 是 输 入 日 期 和 时 间 的 简 单 工 具, 具 有 良 好 的 图 形 界 面。 该 控 件 在Delphi 名 为Win32 的 控 件 面 板 中, 对 其kind 属 性 的 选 择 可 以 确 定 是 输 入 时 间 还 是 日 期, 在 日 期 输 入 中 又 有 一 些 属 性 可 供 不 同 的 选 择, 其 中Datamode 有dmUpDown 和dmComboBox 两 个 选 项, 选 择 前 者, 就 可 以 在 输 入 日 期 时, 用 鼠 标 点 激 向 上 或 向 下 按 钮, 从 而 可 以 非 常 方 便 地 对 年、 月、 日 进 行 递 增 或 递 减; 选 择 后 者, 在 运 行 时 用 鼠 标 点 激, 就 会 弹 出 一 个 界 面 友 好 的 对 话 框, 从 而 可 以 从 中 选 取 日 期, 这 时 日 是 从 相 应 的 月 历 表 中 选 取, 年 和 月 则 仍 是 通 过 按 箭 头 按 钮 递 增 或 递 减。 但 不 管 是dmUpDown 还 是dmComboBox, 都 可 以 在 其 上 直 接 输 入 年 月 日 的 值, 并 且 自 动 地 保 证 日 期 的 有 效 性( 如 闰 年 问 题 等), 因 此 完 全 涵 盖 了《Delphi 中 日 期 输 入 法 二 则》 一 文 中 自 己 定 制 的 日 期 输 入 窗 口 的 功 能 和 速 度。Dateformat 属 性 有dfLong 和dfShort 两 种 选 择, 前 者 为 长 日 期 型( 如1999 年2 月16 日, 如 果 得 到 的 不 是 理 想 的 形 式, 可 调 整Windows 控 制 面 板 上 区 域 设 置 中 的 日 期 格 式 以 及DateTimePicker 的Font 属 性 的Charset 值, 一 般 情 况 取DEFAULT_CHARSET 或GB2312_CHARSET 即 可), 后 者 为 短 日 期 型( 如99-2-16), 考 虑 到 跨 世 纪 问 题, 短 日 期 要 慎 用。 但 长 日 期 型 的 值 不 可 直 接 作 为 日 期 值 赋 给 日 期 型 的 变 量, 要 做 一 点 转 换 工 作, 举 例 如 下:
procedure Tform1.DateTimePicker1CloseUp(Sender: TObject);
var
Year, Month, Day: Word;
Datetime:TDatetime;
begin
//将DateTimePicker1的年月日的值分别赋给 Year, Month, Day
DecodeDate(DateTimePicker1.datetime, Year, Month, Day);
// EditDATE为TDBEdit型的编辑框,对应一个日期型的数据表字段
EditDATE.Text:=inttostr(year)+'-' +inttostr(Month)+'-'+inttostr(Day);
//若将其变为短日期型的,可以发现Delphi把短日期即00--99年都解释为1900--1999年, 而不受Windows控制面板中区域设置中格式的控制
//把年月日合成为日期值
Datetime:=EncodeDate(Year,Month,Day);
end;
---- 上 面 这 个 小 程 序 中,form1 的DateTimePicker1 的Dateformat 属 性 为dfLong,Datamode 的 属 性 为dmComboBox。 DateTimePicker1CloseUp 为 日 期 输 入 对 话 框 缩 起 时 发 生 的 事 件, 也 可 以 用OnChang 事 件, 即DateTimePicker 发 生 变 化 时 触 发, 则Datamode 属 性 无 论 取 何 值 都 可 使 用。
---- 可 见 对DateTimePicker 控 件 只 要 稍 加 处 理 即 可 美 观 快 捷 地 解 决 日 期 输 入 问 题。, 默 许 状 态 下 日 期 只 能 在1752 年9 月14 日 至2999 年12 月31 日 之 间, 但 可 以 通 过 对 其mindate 和maxdate 赋 值 扩 大 选 择 范 围。
---- 但 是 该 控 件 也 有 一 点 缺 憾, 对1899 年12 月30 日 以 前 的 数 值 录 入 须 小 心, 容 易 出 错。 这 倒 引 入 了 另 一 个 话 题, 即Delphi 中 的 日 期 型( 即Tdate 型 ) 的 定 义 为:type TDate = type TDateTime; 而TdateTime 型 的 定 义 为:type TDateTime = type Double; 可 见 日 期 型 归 根 到 底 是 双 精 度 浮 点 型(Double 型),Delphi 规 定 其 整 数 部 分 为1899 年12 月30 日 以 来 的 天 数, 小 数 部 分 则 为24 小 时 按 比 例 分 割 存 储, 例 如:
0 12/30/1899 12:00 am 2.75 1/1/1900 6:00 pm
-1.25 12/29/1899 6:00 am 35065 1/1/1996 12:00 am
(12:00 am 即 为 凌 晨0 点,11:00 am 即 为 早 晨11 点,12:00 pm 即 为 中 午12 点,1:00 pm 即 为 中 午1 点)
---- 而 在Delphi1.0 中, 其 整 数 部 分 为 公 元1 年 以 来 的 天 数, 之 所 以 这 样 改 动 是 为 了 更 好 地 与OLE2.0 相 兼 容。 对 于 日 期 的 运 算 一 定 得 注 意 类 型 的 匹 配, 而 且 由 于 日 期 型 实 则 为Double 型, 所 以 可 对 其 进 行 加 减 乘 除 运 算, 现 举 例 如 下:
procedure TForm1.Table1CalcFields(DataSet: TDataset);
var
t1, t2: tDateTime;
begin
table1d1.asDateTime := Date + 2; {or table1d1.value := date + 2;} // Date为系统日期
table1d2.asDateTime := Date - 2;
//d1,d2为表table1中date or dateTime型字段。
t1 := table1d1.asDateTime;
t2 := table1d2.asDateTime;
// trunc为取整函数,d3为表table1中integer型字段,结果为日期d1和d2的差。
table1d3.asInteger := trunc(double(t1) - double(t2));
end;
---- 另 外, 在Delphi 中 可 以 方 便 地 显 示 系 统 时 间, 只 要 利 用DateToStr(Date) 及TimeToStr(Time) 函 数 即 可 实 现。 也 可 以 通 过 调 用WindowsAPI 函 数 来 实 现 对 系 统 时 间 的 设 置, 具 体 方 法 如 下:
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Text:='1998-12-12 12:00 am';
end;
//可在运行时,也可在Edit1中重新键入日期, 但须注意格式。
procedure TForm1.Button2Click(Sender: TObject);
var
systemtime:Tsystemtime;
DateTime:TDateTime;
begin
DateTime:=StrToDateTime(Edit1.text);
DateTimeToSystemTime(DateTime,systemtime);
SetLocalTime(SystemTime);
GetLocalTime(SystemTime);//读取北京东8区时间
DateTime:=SystemTimeToDateTime(SystemTime);
Edit2.Text:=DateTimeToStr(DateTime);
end;
//Button2点激后,系统时间就变为Edit1中的时间了。
--------------------------------------------------------------------------------
中国计算机世界出版服务公司版权所有
night_cat
2004-07-05
打赏
举报
回复
TO:fei19790920(饭桶的马甲)
你错了,我肯定知道的,结帖都不会,我也太菜了吧!
我是学VC的,去年刚毕业,
因为快速开发的需要,不得不临时学delphi
呵呵,,打开编译器,还没有把控件看一遍呢,
我打算用dbexpress,串口通信,还有多信程,后台msserver,这四者结合起来,
大概四个月后,两个半月后,要交货的!
今天让大家笑话了!
不好意思!
fhuibo
2004-07-05
打赏
举报
回复
有,在Win32而中!
DateTimePicker.date
Arockroll
2004-07-05
打赏
举报
回复
哈哈,顶
fei19790920
2004-07-05
打赏
举报
回复
请问,DELPHI中有控件吗?
楼主太菜了吧,我敢说楼主一定不知道怎么结贴!!
vavyboyleon
2004-07-05
打赏
举报
回复
多新鲜,肯定有阿
Sunniness
2004-07-05
打赏
举报
回复
有,在Win32而中!
TDateTimePicker
ziqing
2004-07-05
打赏
举报
回复
TDATATIMEPICKET
jacket008
2004-07-05
打赏
举报
回复
打错win32页中Tdatetimepicker
myy
2004-07-05
打赏
举报
回复
Win32 页,DateTimePicker
jacket008
2004-07-05
打赏
举报
回复
win32页中Tdatetimepicket
delphi
----
日期
控件
运用,
日期
问题,
日期
时间比较
一、
日期
控件
1、DateTimePicker 1)只显示年月 DateMode:dmUpDown format:yyyy-MM 2)将DateTimePicker的Format属性中加入
日期
格式设成 'yyyy-MM-dd HH:mm',注意大小写, 将kind设置为dtkTime即可,可以在每次Form onShow时将DateTimePick...
Delphi
Raize的
日期
控件
RzDateTimeEdit星期几不能正确显示的问题
Raize的
日期
控件
RzDateTimeEdit星期几不能正确显示,星期日至六都只显示一个“星”字? 在Rzpopups.pas 单元 找到 看看有没有这段 if SysLocale.DefaultLCID S2 := Copy( S, 1, 2 )
delphi
日期
递增循环
原理:对一个
日期
控件
进行循环 目的:选择
日期
,做个动作,选择下个
日期
,重复做这个动作...
Delphi
5,944
社区成员
262,941
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章