Foxtable(狐表)用户栏目专家坐堂 → [求助]搞不懂为什么载入时提示错误


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

主题:[求助]搞不懂为什么载入时提示错误

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


加好友 发短信
等级:婴狐 帖子:67 积分:588 威望:0 精华:0 注册:2017/3/17 21:53:00
[求助]搞不懂为什么载入时提示错误  发帖心情 Post By: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

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/1 14:43:00 [只看该作者]

加上判断

 

Dim r As Row = tb.Current

If r Is Nothing Then Retrun


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


加好友 发短信
等级:婴狐 帖子:67 积分:588 威望:0 精华:0 注册:2017/3/17 21:53:00
  发帖心情 Post By:2017/9/1 15:38:00 [只看该作者]

知道原因了,一定要写在dim r的下面,否则代码第三行和第四行都会出错。

 回到顶部