以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 提示信息 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=189685) |
||||
-- 作者:nxqtxwz -- 发布时间:2023/12/18 8:30:00 -- 提示信息 If e.OldRange.ColSel <> e.NewRange.ColSel Dim c As Col = e.Table.Cols(e.NewRange.ColSel) Select Case c.name Case "辍学分类" Forms("信息").Show Dim rtxt = Forms("信息").Controls("Panel1").basecontrol.Controls("mytxt") rtxt.ForeColor = color.Blue rtxt.text = Tables("表B").Rows(0)("表A") Case "当前状态" Forms("信息").Show Dim rtxt = Forms("信息").Controls("Panel1").basecontrol.Controls("mytxt") rtxt.ForeColor = color.Blue rtxt.text = Tables("表B").Rows(1)("表A") Case "劝学措施" Forms("信息").Show Dim rtxt = Forms("信息").Controls("Panel1").basecontrol.Controls("mytxt") rtxt.ForeColor = color.Blue rtxt.text = Tables("表B").Rows(2)("表A") Case Else Forms("信息").Close End Select End If 显示下面的错误怎么办?应该是显示在窗口“信息”中,代码怎么写呢。 NET Framework 版本:4.0.30319.42000 Foxtable 版本:2022.8.18.1 错误所在事件:表A,AfterSelChange 详细错误信息: 列“表A”不属于表 表B。 |
||||
-- 作者:有点蓝 -- 发布时间:2023/12/18 8:43:00 -- 提示很明显了,列名用错了。这个代码想实现什么功能? |
||||
-- 作者:nxqtxwz -- 发布时间:2023/12/18 8:50:00 -- 想着点了表A中的一列,则将表B中的一列中第几条记录显示在窗口“信息”里。 比如: 鼠标如果点了表A的第二列,则将表B中第五列第三条记录的内容显示在窗口“信息”中。 如果点了表A的第三列,则将表B中第五列第四条记录的内容显示在窗口“信息”中。 依此类推,起到说明作用。
[此贴子已经被作者于2023/12/18 8:52:05编辑过]
|
||||
-- 作者:nxqtxwz -- 发布时间:2023/12/18 9:05:00 --
|
||||
-- 作者:有点蓝 -- 发布时间:2023/12/18 9:34:00 -- 改为需要的列名呀 rtxt.text = Tables("表B").Rows(0)("第五列") |
||||
-- 作者:nxqtxwz -- 发布时间:2023/12/18 10:24:00 -- 老师您好,问题解决,谢谢。但还有个问题就是: 当刚打开表,点不管哪个列,都不会出现提示窗口,只有换了行后才出现窗口。这个原因是代码放在了表A的AfterSelChange事件中,只有列变了才激发代码执行。如何能做到一打开表不管点哪个列都能及时出现提示窗口呢
[此贴子已经被作者于2023/12/18 10:24:20编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2023/12/18 10:34:00 -- 您的代码逻辑就是只有选择这3个列才会显示的呀,其它列就关闭了。如果现在其它列也打开窗口,那么窗口显示什么内容呢? |
||||
-- 作者:nxqtxwz -- 发布时间:2023/12/18 11:13:00 -- 老师,问题在于代码放在哪个事件中,因为打开表后第一次无论选哪个列它都不显示提示信息。只有第二次行择不同列它才显示。 |
||||
-- 作者:有点蓝 -- 发布时间:2023/12/18 11:22:00 -- AfterOpenProject事件加上代码 Forms("信息").Show Dim rtxt = Forms("信息").Controls("Panel1").basecontrol.Controls("mytxt") rtxt.ForeColor = color.Blue rtxt.text = Tables("表B").Rows(0)("第五列") |