Foxtable(狐表)用户栏目专家坐堂 → [求助]汇总表做甘特图


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

主题:[求助]汇总表做甘特图

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


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

右侧的甘特图,也多加辅助列,把左边的分组列的内容填写过来同样也分组折叠试试。

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


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

不然,就在左边分组折叠的使用,重新生成甘特图 。

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


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

以下是引用swimmer01在2018/9/20 10:01:00的发言:
多级分组折叠后左边表无法定位行及取数据?

 

具体说明你的问题,上传具体例子测试。


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


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

取数据,修改

 

If DrawGannt Then
    Dim r As Row  = Tables("项目甘特图_Table1").Rows(e.Row.Index, True)
    Dim dt1 As Date = r("计划开始日期")
    Dim dt2 As Date = r("计划完成日期")
    Dim dt As Date = e.Col.Name.Replace("年","-").Replace("月_","-")
    If dt>=dt1 AndAlso dt<=dt2 Then
        e.StartDraw()
        If dt < Date.Today Then
            e.Graphics.FillRectangle(Brushes.Green,e.x ,e.y + 5, e.Width, e.Height - 10)
        Else
            e.Graphics.FillRectangle(Brushes.Red,e.x ,e.y + 3, e.Width, e.Height - 7)
        End If
        e.EndDraw()
    End If
End If


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


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

至于选定行比较麻烦。点击汇总行,不会触发任何表事件的,这个时候你要额外绑定一个事件处理

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=105737&skin=0

 


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


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

看7楼,修改代码。

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


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

你可以循环每一行,同步每一行的行高

 

Dim t As Table = CurrentTable
For i As Integer = t.HeaderRows To t.grid.Rows.count-1
    msgbox(t.grid.Rows(i).heightdisplay)
Next


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


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

内部函数

 

If Forms("项目甘特图").Opened()
    Dim t1 As Table = Tables("项目甘特图_Table1")
    Dim t2 As Table = Tables("项目甘特图_Table2")
    If t1.TopVisibleRow >=0 Then
        Dim r As Row = t1.Rows(t1.TopVisibleRow, True)
        Dim dt As Date = r("计划开始日期")
        Dim nm As String = dt.Year & "年" & dt.Month &"月_" & dt.Day
        Dim idx As Integer= t2.cols(nm).Index
        t2.LeftVisibleCol = idx
    End If
End If


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


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

If Forms("项目甘特图").Opened()
    Dim t1 As Table = Tables("项目甘特图_Table1")
    Dim t2 As Table = Tables("项目甘特图_Table2")
    If t1.TopVisibleRow >=0 Then
        Dim r As Row = t1.Rows(t1.TopVisibleRow, True)
        Dim dt As Date = r("计划开始日期")
        Dim nm As String = dt.Year & "年" & dt.Month &"月_" & dt.Day
        If t2.cols.contains(nm)
            Dim idx As Integer= t2.cols(nm).Index
            t2.LeftVisibleCol = idx
        End If
    End If
End If

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


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

绑定 AfterCollapse 事件

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:项目计划管理.zip


 回到顶部
总数 12 1 2 下一页