以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- afterload事件 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=81601) |
-- 作者:ycwk -- 发布时间:2016/3/1 20:01:00 -- afterload事件 把下面这段代码放到 窗口的 afterload事件中,本想打入电话后,人工点击弹出窗口"win_日常问题记录修改",再把全局变量CallerNo传给窗口“tb_电话号码”控件,现在tb_电话号码可以正常得到值,但是下面的需要根据来电 电话号码取值的三个combox控件死活都获取不到值。 何故? 我现在只能把下面第二段代码放在 tb_电话号码控件的 click 事件中,通过弹出窗口后点击一下三个combox控件才能正常获取值。 第一段: If vars("CallerNo") IsNot Nothing Then e.Form.Controls("tb_电话号码").text=Vars("CallerNo") \'在加载窗口后把全局变量CallerNO(存储来电号码),传递给窗口里的控件 End If 第二段: Dim tb As WinForm.TextBox Dim dr As DataRow tb=Forms("win_日常问题记录修改").controls("tb_电话号码") dr= DataTables("科室信息化联络员表").SQLFind("科室_电话=\'"& tb.value &"\'") If dr IsNot Nothing Then Forms("win_日常问题记录修改").Controls("cb_部门分类").value =dr("部门分类") Forms("win_日常问题记录修改").Controls("cb_科室_学科").value =dr("科室_学科") Forms("win_日常问题记录修改").Controls("cb_科室_明细").value =dr("科室_明细") Else MessageBox.Show("该电话号码没有收录!") End If |
-- 作者:大红袍 -- 发布时间:2016/3/1 22:26:00 -- 这句代码
dr= DataTables("科室信息化联络员表").SQLFind("科室_电话=\'"& tb.value &"\'")
1、sqlFind,是后台查找,你的记录必须保存以后,才能找到,否者,就要用find
2、tb.Value,最好改成 tb.Text
3、你什么时候触发赋值?你可以在 textbox 的TextChanged事件写代码嘛 |
-- 作者:ycwk -- 发布时间:2016/3/2 21:24:00 -- 我希望通过全局变量把电话号码传到 forms() .open 后的窗口的tb_电话号码 控件中, (这步没有问题) ,问题在于窗口打开后,要根据 tb_电话号码 获取三个combox的值,获取不到,即使把代码放到textbox 的 textchanged事件中也一样 |
-- 作者:大红袍 -- 发布时间:2016/3/2 21:38:00 -- 在textChanged事件加入msgbox看是否弹出。
完整看2楼,再不行,上传例子。 |