以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  有关甘特图的定位问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=81433)

--  作者:judyhu2008
--  发布时间:2016/2/27 16:17:00
--  有关甘特图的定位问题

按照帮助,做好了甘特图,但有一个地方想再完美一点:

 

如我点击左边的任务窗口是,想要让右边的甘特图自动定位到起始位置,而不是像现在这样都是定位在最左边,看起来一片空白。

甘特的代码一点也不懂,只是拿来用了,所以还请大侠们帮一下

 


图片点击可在新窗口打开查看此主题相关图片如下:甘特.bmp
图片点击可在新窗口打开查看

--  作者:Hyphen
--  发布时间:2016/2/27 16:31:00
--  
打开示例,注意窗口AfterLoad事件这段代码

With Tables("窗口1_Table2").Grid
    .FocusRect = C1.Win.C1FlexGrid.FocusRectEnum.None \'不显示焦点框
    .HighLight = C1.Win.C1FlexGrid.HighLightEnum.Never \'不高亮显示选定区
    .SelectionMode = C1.Win.C1FlexGrid.SelectionModeEnum.Cell \'每次只显示一个单元格
End With


--  作者:judyhu2008
--  发布时间:2016/2/27 17:10:00
--  

这个不行啊,我选定了左边的项目,右边都是显示的最先的日期,即有一段空白。

 

我想点击左边的项目,右边焦点自动到项目开始日期,而不是甘特图的最左边


--  作者:Hyphen
--  发布时间:2016/2/27 17:20:00
--  
上传例子说明
--  作者:judyhu2008
--  发布时间:2016/2/27 19:45:00
--  
其实casestudy里的甘特图也是存在在这个问题的
左边的TABLE滚动的时候没有问题,因为右边的甘特也自动滚动到相应的日期
但当点击左边的TABLE时,右边的图就会转到最开始的日期。

我想实现的功能是,即使是点击左边的任务表时,右边自动定位到项目开始日期。

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


--  作者:大红袍
--  发布时间:2016/2/28 11:53:00
--  

positionChanged事件

 

If Forms("窗口1").Opened() Then
    Dim tbl As Table = Tables("窗口1_Table2")
    If tbl.Position <> e.Table.Position Then
        Dim cname As String = format(e.Table.Current("开始日期"), "yyyy年M月_d")
        tbl.LeftVisibleCol = tbl.Cols(cname).Index
        tbl.Select(e.Table.Position, tbl.Cols(cname).Index)
    End If
End If


--  作者:jamhuton
--  发布时间:2017/6/30 13:57:00
--  
写表事件,还是窗口表事件的positionchanged
--  作者:有点甜
--  发布时间:2017/6/30 14:14:00
--  

回复7楼,都可以的。一般写在窗口表控件的PositionChanged事件。