以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教:根据字段A给字段B赋值,字段B如何即时改变? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=74394) |
-- 作者:bahamute -- 发布时间:2015/9/10 9:28:00 -- 请教:根据字段A给字段B赋值,字段B如何即时改变? 从记录控件操作 根据字段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编辑过]
|
-- 作者:大红袍 -- 发布时间:2015/9/10 9:32:00 -- 去写ChangedEdit事件,如代码
If e.Col.name = "第一列" Then
---------------
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 -- 发布时间:2015/9/10 9:41:00 -- 在RecordGrid控件中操作好像不起作用,还是要等焦点离开A字段后,B字段才改变,没有即时改变。 |
-- 作者:大红袍 -- 发布时间:2015/9/10 9:49:00 -- 我测试,记录窗口一样有效。 |
-- 作者:bahamute -- 发布时间: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 -- 发布时间:2015/9/10 11:05:00 -- 解决了,谢谢。 |
-- 作者:大红袍 -- 发布时间:2015/9/10 11:06:00 -- 第一段,是给你测试用的;
第二段,写到ChangedEdit事件去 |