Foxtable(狐表)用户栏目专家坐堂 → 请教:根据字段A给字段B赋值,字段B如何即时改变?


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

主题:请教:根据字段A给字段B赋值,字段B如何即时改变?

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


加好友 发短信
等级:六尾狐 帖子:1421 积分:11294 威望:0 精华:0 注册:2008/9/1 22:20:00
请教:根据字段A给字段B赋值,字段B如何即时改变?  发帖心情 Post By:2015/9/10 9:28:00 [只看该作者]

从记录控件操作

根据字段A给字段B赋值,字段B如何即时改变?
从表事件里试了一番,没发现那个事件可以做到只要A变化,则B马上赋值,必须等到离开字段A后B才变化。

If e.Col.Name = "层级" Then
    If e.Row.IsNull("层级") Then
        e.Row("岗位") = 0
    Else        
        Select Case e.Row ("层级")
            Case "A1"
                e.Row("岗位")=8000
            Case "A2"
                e.Row("岗位")=7050           
        End Select
    End If
End If
[此贴子已经被作者于2015/9/10 9:31:59编辑过]

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


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

去写ChangedEdit事件,如代码

 

If e.Col.name = "第一列" Then
    e.Row("第二列") = e.Text
End If

 

---------------

 

If e.Col.Name = "层级" Then
    If e.Text = nothing Then
        e.Row("岗位") = 0
    Else        
        Select Case e.Text
            Case "A1"
                e.Row("岗位工资")=8000
            Case "A2"
                e.Row("岗位工资")=7050           
        End Select
    End If
End If

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


加好友 发短信
等级:六尾狐 帖子:1421 积分:11294 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2015/9/10 9:41:00 [只看该作者]

在RecordGrid控件中操作好像不起作用,还是要等焦点离开A字段后,B字段才改变,没有即时改变。


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


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

我测试,记录窗口一样有效。


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


加好友 发短信
等级:六尾狐 帖子:1421 积分:11294 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2015/9/10 10:48:00 [只看该作者]

我只把下面几句放到ChangedEdit,结果报错,A列是字符列,B列是数字列,转换无效。
If e.Col.name = "第一列" Then
    e.Row("第二列") = e.Text
End If

这段代码也要放到ChangedEdit事件吗?,我还是放在datacolchanged里的。
If e.Col.Name = "层级" Then
    If e.Text = nothing Then
        e.Row("岗位") = 0
    Else        
        Select Case e.Text
            Case "A1"
                e.Row("岗位工资")=8000
            Case "A2"
                e.Row("岗位工资")=7050           
        End Select
    End If
End If


[此贴子已经被作者于2015/9/10 10:55:20编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1421 积分:11294 威望:0 精华:0 注册:2008/9/1 22:20:00
  发帖心情 Post By:2015/9/10 11:05:00 [只看该作者]

解决了,谢谢。

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


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

第一段,是给你测试用的;

 

第二段,写到ChangedEdit事件去


 回到顶部