以文本方式查看主题

-  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=32329)

--  作者:blackzhu
--  发布时间:2013/4/29 15:01:00
--  [分享]做了个列 显示关联行数的例子
  先看看图片.比如11有关联数据6行 就显示6 12有5行就显示5:
图片点击可在新窗口打开查看此主题相关图片如下:8u4lb88hafxj{%ce7gpvnyi.jpg
图片点击可在新窗口打开查看



例子:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:drawcell标记.foxdb


[此贴子已经被作者于2013-4-29 15:03:29编辑过]

--  作者:qq121454970
--  发布时间:2013/4/29 15:47:00
--  
谢谢分享
--  作者:everybody
--  发布时间:2015/8/17 0:21:00
--  

下载了,貌似用不了么?

 

是不是fb升级了,用不了这个功能啦?


--  作者:everybody
--  发布时间:2015/8/17 0:21:00
--  
If e.Col.Name = "第一列" Then
    e.StartDraw()
    Dim fnt As New Font("微软雅黑",10,FontStyle.Bold)
    If e.Row.DataRow.GetChildRows("表B").Count > 0 Then
        Dim msg As String = CStr(e.Row.DataRow.GetChildRows("表B").Count)
        e.Graphics.FillEllipse(Brushes.red,e.Col.Width ,e.y+0,18,18)
        \' e.Graphics.FillEllipse(Brushes.red,e.x + 0 ,e.y + 0,18,18)
        e.Graphics.DrawString(msg,fnt,Brushes.White,e.Col.Width + 3 ,e.y + 0)
    End If
    e.EndDraw()
End If

--  作者:大红袍
--  发布时间:2015/8/17 9:16:00
--  

代码改一下

 

If e.Col.Name = "第一列" Then
    e.StartDraw()
    Dim fnt As New Font("微软雅黑",10,FontStyle.Bold)
    If e.Row.DataRow.GetChildRows("表B").Count > 0 Then
        Dim msg As String = CStr(e.Row.DataRow.GetChildRows("表B").Count)
        Dim c As Integer
        If e.Col.Width = -1 Then
            c = 100
        Else
            c = e.Col.Width
        End If
        e.Graphics.FillEllipse(Brushes.red,e.x + c - 25 ,e.y+0,18,18)
        \' e.Graphics.FillEllipse(Brushes.red,e.x + 0 ,e.y + 0,18,18)
        e.Graphics.DrawString(msg,fnt,Brushes.White,e.x + c - 22 ,e.y + 0)
    End If
    e.EndDraw()
End If