Foxtable(狐表)用户栏目专家坐堂 → 交叉统计表可以绘制单元格按钮吗?


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

主题:交叉统计表可以绘制单元格按钮吗?

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


加好友 发短信
等级:三尾狐 帖子:646 积分:5691 威望:0 精华:0 注册:2017/4/7 12:15:00
交叉统计表可以绘制单元格按钮吗?  发帖心情 Post By:2017/8/5 9:05:00 [只看该作者]

在全局表事件的cellbuttonclick中这样写代码无效。
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170805085759.jpg
图片点击可在新窗口打开查看

If e.Table.Name = "A1销控"  Then
    If e.Col.IsNumeric AndAlso e.Col.Name <> "楼层" Then
        If e.Row.IsNull(e.Col.Name) = False '且该列已经输入内容
           e.Cancel = True '取消默认动作
              Forms("窗口1").Open()            
        End If
    End If
End If

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


加好友 发短信
等级:超级版主 帖子:106763 积分:543016 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/8/5 9:15:00 [只看该作者]

没有开启事件:http://www.foxtable.com/webhelp/scr/0671.htm

上传统计表后

DataTables("统计表").GlobalHandler.CellButtonClick = True

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


加好友 发短信
等级:三尾狐 帖子:646 积分:5691 威望:0 精华:0 注册:2017/4/7 12:15:00
  发帖心情 Post By:2017/8/5 10:06:00 [只看该作者]

已经给统计表指定了窗口了还是不能生效,是否跟我开启了drawcell事件有关?

DataTables("统计表").GlobalHandler.drawcell = True

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


加好友 发短信
等级:超级版主 帖子:106763 积分:543016 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/8/5 10:08:00 [只看该作者]

要开启CellButtonClick 啊,看2楼

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


加好友 发短信
等级:超级版主 帖子:106763 积分:543016 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/8/5 10:10:00 [只看该作者]

窗口表

e.form.controls("Table1").Table.Datatable.GlobalHandler.CellButtonClick = True

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


加好友 发短信
等级:三尾狐 帖子:646 积分:5691 威望:0 精华:0 注册:2017/4/7 12:15:00
  发帖心情 Post By:2017/8/5 10:26:00 [只看该作者]

DataTables("A1销控
此主题相关图片如下:qq截图20170805101935.jpg
按此在新窗口浏览图片
").GlobalHandler.drawcell = True
DataTables("A1销控").GlobalHandler.CellButtonClick = True
都加了,drawcell事件生效了,CellButtonClick事件不生效

代码如下:

If e.Table.Name = "A1销控"  Then
    If e.Col.IsNumeric AndAlso e.Col.Name <> "楼层" Then
        If e.Row.IsNull(e.Col.Name) = False '且该列已经输入内容
e.form.controls("A1销控").Table.Datatable.GlobalHandler.CellButtonClick = True
           e.Cancel = True '取消默认动作
              Forms("窗口1").Open()            
        End If
    End If
End If



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


加好友 发短信
等级:超级版主 帖子:106763 积分:543016 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/8/5 10:31:00 [只看该作者]

GlobalHandler加到统计表生成之后,不是加给这个代码里。不会上传例子

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


加好友 发短信
等级:三尾狐 帖子:646 积分:5691 威望:0 精华:0 注册:2017/4/7 12:15:00
  发帖心情 Post By:2017/8/5 10:39:00 [只看该作者]

就是加在统计表生成之后的啊,PrepareEdit事件和DrawCell事件都可以生效,就是CellButtonClick不行

AfterOpenProject代码:

Dim g1 As New CrossTableBuilder("A1销控", DataTables("总表"), "[楼号]='A1'")

g1.HGroups.AddDef("楼层")

g1.VGroups.AddDef("楼号")

g1.VGroups.AddDef("单元")

g1.VGroups.AddDef("位置")

g1.Totals.AddDef("房间状态", AggregateEnum.Max, "房间状态")

g1.Filter = "[楼号]='A1'"

g1.Build()

DataTables("A1销控").GlobalHandler.PrepareEdit = True

DataTables("A1销控").GlobalHandler.CellButtonClick = True

DataTables("A1销控").GlobalHandler.DrawCell = True


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


加好友 发短信
等级:超级版主 帖子:106763 积分:543016 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/8/5 10:57:00 [只看该作者]

Dim g1 As New CrossTableBuilder("A1销控", DataTables("总表"), "[楼号]='A1'")

g1.HGroups.AddDef("楼层")

g1.VGroups.AddDef("楼号")

g1.VGroups.AddDef("单元")

g1.VGroups.AddDef("位置")

g1.Totals.AddDef("房间状态", AggregateEnum.Max, "房间状态")

g1.Filter = "[楼号]='A1'"

g1.Build()

Tables("A1销控").Cols("楼层").ComboList = "|..."

DataTables("A1销控").GlobalHandler.PrepareEdit = True

DataTables("A1销控").GlobalHandler.CellButtonClick = True

DataTables("A1销控").GlobalHandler.DrawCell = True


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


加好友 发短信
等级:三尾狐 帖子:646 积分:5691 威望:0 精华:0 注册:2017/4/7 12:15:00
  发帖心情 Post By:2017/8/5 11:34:00 [只看该作者]

这样点击楼层是可以了,但是如何实现点击哪一套就可以弹出哪一套的信息呢?

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