Foxtable(狐表)用户栏目专家坐堂 → 相同的工程名称的任务甘特图的进度条能放在同一行吗?


  共有3708人关注过本帖树形打印复制链接

主题:相同的工程名称的任务甘特图的进度条能放在同一行吗?

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/5/15 9:26:00 [显示全部帖子]

不可以。

 

如果日期重叠的情况怎么处理?多个日期重叠以后怎么显示?

 

多行有什么问题?你可以根据工程名称排序,这样同一个工程的进度都显示在一起了啊,只是显示不在同一行而已。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/5/15 10:10:00 [显示全部帖子]

以下是引用yetle在2018/5/15 9:33:00的发言:
不重复,不重叠,可以吗?或者,不同的任务名称用不同的颜色。放在同一行,看得更一目了然
[此贴子已经被作者于2018/5/15 9:35:29编辑过]

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:编码绘制甘特图.table


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/5/15 10:52:00 [显示全部帖子]


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/5/16 17:38:00 [显示全部帖子]

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:编码绘制甘特图 (1).table


 


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/5/17 10:34:00 [显示全部帖子]

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:编码绘制甘特图 (1) (1).table


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/6/14 15:12:00 [显示全部帖子]

static dic As new Dictionary(of String, List(of String))
If DrawGannt Then
    Dim cr As Row  = Tables("任务").Rows(e.Row.Index)
    For Each r As DataRow In cr.Table.DataTable.Select("工程名称 = '" & cr("工程名称") & "'", "开始日期")
        Dim dt1 As Date = r("开始日期")
        Dim dt2 As Date = r("结束日期")
        Dim dt As Date = e.Col.Name.Replace("年","-").Replace("月_","-")
       
        If dt = dt1 Then
            e.StartDraw()
            If dic.ContainsKey(e.Row.Index) = False
                Dim ls As new List(Of String)
                ls.add(dt)
                dic.add(e.Row.Index, ls)
            Else
                Dim ls = dic(e.Row.Index)
                If ls.contains(dt) = False Then
                    ls.add(dt)
                End If
            End If
           
            If dic(e.Row.Index).indexof(dt) Mod 2 = 0 Then
                Dim br1 As Brush = Brushes.Red
                e.Graphics.FillRectangle(br1,e.x ,e.y + 5, e.Width, e.Height - 10)
            Else
                Dim br2 As Brush = Brushes.green
               
                e.Graphics.FillRectangle(br2,e.x ,e.y + 5, e.Width, e.Height - 10)
            End If
            Dim fnt As New Font("宋体",9)
            Dim msg As String = r("任务名称")
            e.Graphics.DrawString(msg,fnt,Brushes.Red,e.x,e.y+2)
            e.EndDraw()
           
        End If
    Next
End If

 回到顶部