Foxtable(狐表)用户栏目专家坐堂 → [求助]在CurrentChanged事件中写入代码,其结果和我要的结果完全相反,应该怎么改


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

主题:[求助]在CurrentChanged事件中写入代码,其结果和我要的结果完全相反,应该怎么改

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


加好友 发短信
等级:幼狐 帖子:178 积分:1462 威望:0 精华:0 注册:2011/4/12 18:18:00
[求助]在CurrentChanged事件中写入代码,其结果和我要的结果完全相反,应该怎么改  发帖心情 Post By:2015/12/21 17:00:00 [只看该作者]

我在CurrentChanged事件中写入如下代码,想表示当行为列为借款,且 整行输入结束后 弹出messagebox提示

但现在变成了 输入后 切换行没有反应,在回点这个行 才出现窗口提示。

其结果和我要的结果完全相反,应该怎么改? 我写在CurrentChanged事件中对吗?

 

Dim Values() As String = {"代垫款","借款","代付应收"}
For Each Value  As String In Values
   If e.Table.Current("摘要_行为") = value Then
    MessageBox.Show("是否录入到应收账款","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question)
    End If
Next

 

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:360反馈意见截图165307188710182.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/21 17:10:00 [只看该作者]

你要写到这个事件 BeforeSelChange

 

http://www.foxtable.com/help/topics/0644.htm

 


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/21 17:12:00 [只看该作者]

Dim Values() As String = {"代垫款","借款","代付应收"}
Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
For Each Value  As String In Values
    If r("摘要_行为") = value Then
        MessageBox.Show("是否录入到应收账款","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question)
    End If
Next

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


加好友 发短信
等级:幼狐 帖子:178 积分:1462 威望:0 精华:0 注册:2011/4/12 18:18:00
  发帖心情 Post By:2015/12/21 17:21:00 [只看该作者]

谢谢大红袍哥回复我问题,可是用这个代码在这个事件中 , 在同一行,每切换一个单元格 就弹出一次,我想填写完 切换行的时候 才弹出来。还是用这个事件吗?这个事件好像是每换一单元格就触发啊,所以我当时考虑的是CurrentChanged事件

 

袍哥 还有个问题这个事件中不能用opento吗?

Dim Values() As String = {"代垫款","借款","代付应收"}
Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
For Each Value  As String In Values
    If r("摘要_行为") = value Then
        Dim yes As DialogResult
        yes =  MessageBox.Show("是否录入到应收账款","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question)
        If yes = DialogResult.Yes Then
            opento("应收账款")
        End If
    End If
Next

我这样写 提示出错,我想跳转到应收账款表 ,应该用哪个open呢?

谢谢

[此贴子已经被作者于2015/12/21 17:39:55编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/21 18:12:00 [只看该作者]

多加两行代码

 

If e.OldRange.RowSel <> e.NewRange.RowSel '如果选择的是不同的行
    If e.OldRange.RowSel >= 0 AndAlso e.OldRange.Rowsel < e.Table.Rows.Count Then '而且原来选择的是一个有效的数据行

    End If

End If


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


加好友 发短信
等级:幼狐 帖子:178 积分:1462 威望:0 精华:0 注册:2011/4/12 18:18:00
  发帖心情 Post By:2015/12/21 18:50:00 [只看该作者]

谢谢 已经全部解决,又学到一招

 回到顶部