以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]搞不懂为什么载入时提示错误 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=106069) |
-- 作者:WENFEIZHU -- 发布时间:2017/9/1 14:10:00 -- [求助]搞不懂为什么载入时提示错误 一个窗口中有绑定一个表并有4个panel 我在窗口中代表ID的textbox中设置了一个valuechange,如下。 目的是,当我选择表中不同行时,根据不同的situation,来决定4个panel的颜色。 课时在这个form载入时弹出错误,应该是在载入过程中,某对象来不及载入触发事件导致。 请问如何解决。谢谢! _______________________________________________ 错误所在事件:窗口,submit-1,TextBox1,ValueChanged 详细错误信息: 未将对象引用设置到对象的实例。 _______________________________________________ Dim tb As Table = Tables("Data_Basic") Dim r As Row = tb.Current Dim adrs As String = r("AttachedImage") Dim adrs2 As String = r("AttachedImageAfter") Dim Fm As winform.Form = Forms("submit-1") Dim pic As winform.picturebox = fm.controls("PictureBox1") Dim pic2 As winform.picturebox = fm.controls("PictureBox2") If adrs = "" Then pic.ImageFile = projectpath & "\\images\\NULLIMAGE.jpg" Else pic.ImageFile = adrs End If \'载入图片 If adrs2 = "" Then pic2.ImageFile = projectpath & "\\images\\NULLIMAGE.jpg" Else pic2.ImageFile = adrs2 End If \'如果为空则退出 If fm.controls("textbox1").text = "" Or fm.controls("textbox25").text = "" Exit Sub End If \'显示状态 Dim s1 As WinForm.Panel = fm.Controls("Panel1") Dim s2 As WinForm.Panel = fm.Controls("Panel2") Dim s3 As WinForm.Panel = fm.Controls("Panel3") Dim s4 As WinForm.Panel = fm.Controls("Panel4") s1.BackColor = Color.lime s2.BackColor = Color.lime s3.BackColor = Color.lime s4.BackColor = Color.lime If r("situation") = "提交" Then
s1.BackColor = Color.whitesmoke s2.BackColor = Color.whitesmoke s3.BackColor = Color.whitesmoke s4.BackColor = Color.whitesmoke Else If r("situation") = "审核" Then s2.BackColor = Color.whitesmoke s3.BackColor = Color.whitesmoke s4.BackColor = Color.whitesmoke Else If r("situation") = "接手" Then s2.BackColor = Color.whitesmoke s3.BackColor = Color.whitesmoke s4.BackColor = Color.whitesmoke Else If r("situation") = "返工" Then s2.BackColor = Color.whitesmoke s3.BackColor = Color.whitesmoke s4.BackColor = Color.whitesmoke Else If r("situation") = "完成" Then s3.BackColor = Color.whitesmoke s4.BackColor = Color.whitesmoke Else If r("situation") = "验收" Then s4.BackColor = Color.whitesmoke End If |
-- 作者:有点甜 -- 发布时间:2017/9/1 14:43:00 -- 加上判断
Dim r As Row = tb.Current If r Is Nothing Then Retrun |
-- 作者:WENFEIZHU -- 发布时间:2017/9/1 15:38:00 -- 知道原因了,一定要写在dim r的下面,否则代码第三行和第四行都会出错。
|