用VB中的日历(DTPicker) 和datagrid控件实现:点击日历日期在datagrid中显示当天数据

 我来答
xihat
2011-05-14 · 超过20用户采纳过TA的回答
知道答主
回答量:28
采纳率:0%
帮助的人:59.4万
展开全部
‘假定当前连接到数据库的Connection对象是g_Conn(换成你的),你要操作的表是Table,
'其中日期的字段名称是Date。窗体上的控件名称: DTPicker1 ,Adodc1, DataGrid1
‘在FormLoad()中加入下面的代码 ,查询记录中日期的最大值和最小值。
Private Sub FormLoad()
Dim RecordDate As Recordset ’记录集对象,记录日期查询结果
Dim strSQL As String
Dim MaxDate As Date '记录中日期的最大值
Dim MinDate As Date '记录中日期的最小指
strSQL = "select max(Date) as nMax,min(Date) as nMin from Table"
Set RecordDate = g_Conn.Execute(strSQL)
If Not RecordDate.BOF And Not RecordDate.EOF Then
MaxDate = RecordDate.Fields("nMax")
MinDate = RecordDate.Fields("nMin")
End If
End Sub
'如果日期被改变并且是有效日期,刷新 (这里你可以用DTPikcer1的Click事件但DTPicker
‘不仅仅能通过单击选择日期,还有其他方式,个人建议用 Change事件。
Private Sub DTPicker1_Change()
'检验选择的日期是否有效
If DTPicker1.Value < MinDate Or DTPicker1.Value > MaxDate Then
MsgBox "输入日期必须介于" & MinDate & " 和" & MaxDate & "之间!"
Exit sub
end if
strSQL=“SELECT * From Table WHERE Date=#" & DTPicker1.Value & "#"”
Adodc1.ConnectionString = g_Conn.ConnectionString ‘设定Adodc 的连接字符串连接到数据库
Adodc1.RecordSource = strSQL
Adodc1.Refresh '刷新记录
Set DataGrid1.DataSource = Adodc1

End Sub
百度网友e638978
2011-05-14 · TA获得超过149个赞
知道小有建树答主
回答量:257
采纳率:0%
帮助的人:189万
展开全部
你所指的当天数据是指当天的日期吗?
追问
额 可能我没表的明白 datagrid连接了收入表 表中有个日期字段 我想当我点击日历中某天时,显示当天的收入情况
追答
用DTPicker的change事件就可以实现了哦.然后就是数据库查找的操作了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式