以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  甜老师,小窗口问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=64322)

--  作者:cyrollin
--  发布时间:2015/2/11 9:17:00
--  甜老师,小窗口问题
您好,甜老师

请问怎么实现 鼠标指到当前列,就显示最后三次录入的内容,显示在小窗口里面,像备注列窗口一样
比如 鼠标指到 张三 这一行
就在右边显示 张三的最后三笔录入记录,显示以前录入的几个列的内容,比如 时间,服务内容。

谢谢!

--  作者:有点甜
--  发布时间:2015/2/11 9:19:00
--  

 去编写CurrentChanged事件,find出三行数据,赋值给窗口的控件

 

http://www.foxtable.com/help/topics/0396.htm

 


--  作者:cyrollin
--  发布时间:2015/2/11 9:26:00
--  
哦,代码是这样的

Dim dr As DataRow
With DataTables("派工表")
    dr = .Find("产品 = \'PD01\'","日期 Desc") \'找出最后一次订购PD01产品的记录
    dr = .Find("产品 = \'PD01\'","日期 Desc",1) \'找出倒数第二次订购PD01产品的记录
End With

这里指定了某一个产品PD01,但我的情况是鼠标指到哪一行,就显示那个产品或姓名以前最后录入的几笔数据,没有具体的名称
怎么写呢?



--  作者:Bin
--  发布时间:2015/2/11 9:40:00
--  
参考http://www.foxtable.com/help/topics/2681.htm

搞不定就上例子

--  作者:有点甜
--  发布时间:2015/2/11 9:42:00
--  
 
With DataTables("派工表")
    Dim dr1 As DataRow = .Find("姓名 = \'" & e.Table.Current("姓名") & "\'","日期 Desc") \'找出最后一次订购PD01产品的记录
    Dim dr2 As DataRow = .Find("姓名 = \'" & e.Table.Current("姓名") & "\'","日期 Desc", 1) \'找出最后一次订购PD01产品的记录
End With
 

--  作者:cyrollin
--  发布时间:2015/2/11 10:00:00
--  
去编写CurrentChanged事件,find出三行数据,赋值给窗口的控件

这个赋值给窗口的控件,怎么操作的呢?

--  作者:有点甜
--  发布时间:2015/2/11 10:01:00
--  
 Forms("窗口1").Controls("TextBox1").Text = dr1("姓名")
--  作者:cyrollin
--  发布时间:2015/2/11 10:14:00
--  
也是写到 currentchanged 事件中吗?
--  作者:有点甜
--  发布时间:2015/2/11 10:15:00
--  

 是,最好加一个判断

 

If Forms("窗口1").Opened Then

    \'其它代码

End If


--  作者:cyrollin
--  发布时间:2015/2/11 10:29:00
--  
我写的完整代码是这样的:

With DataTables("派工表")
    Dim dr1 As DataRow = .Find("服务内容 = \'" & e.Table.Current("服务内容") & "\'","日期 Desc") \'找出最后一次订购PD01产品的记录
    Dim dr2 As DataRow = .Find("服务内容 = \'" & e.Table.Current("服务内容") & "\'","日期 Desc", 1) \'找出最后一次订购PD01产品的记录
    Dim dr3 As DataRow = .Find("服务内容 = \'" & e.Table.Current("服务内容") & "\'","日期 Desc", 2) \'找出最后一次订购PD01产品的记录
End With

    If Forms("窗口1").Opened Then
Dim dr1 As DataRow
Forms("窗口1").Controls("TextBox1").Text = dr1("服务内容")
End If

但提示: 不存在名为 窗口1 的窗口