NullReferenceException未处理 - VBNET

时间:2018-01-18 02:45:09

标签: vb.net

    Dim graph As Graphics = Nothing
    Dim frmleft As System.Drawing.Point = Me.Bounds.Location
    Dim bmp As New Bitmap(Me.Bounds.Width + 8, Me.Bounds.Height + 8)
    graph = Graphics.FromImage(bmp)
    Dim screenx As Integer = frmleft.X
    Dim screeny As Integer = frmleft.Y
    graph.CopyFromScreen(screenx - 5, screeny - 5, 0, 0, bmp.Size)
    PictureBox3.BackgroundImageLayout = ImageLayout.Stretch
    PictureBox3.BackgroundImage = bmp


    If SaveFileDialog1.ShowDialog() = DialogResult.OK Then
        PictureBox3.Image.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Jpeg)   'Error Here!!!!!!'

    End If

End Sub

此代码用于屏幕截图并同时保存。程序会屏幕显示表单,但保存部分是错误所在。

1 个答案:

答案 0 :(得分:0)

此现有问答标记为vb.net,是否有帮助?

What is a NullReferenceException, and how do I fix it?

  

<强>调试

     

如何找到NullReferenceException的来源?除了查看将在其发生的位置准确抛出的异常本身之外,Visual Studio中的调试的一般规则适用:放置策略断点并检查变量,方法是将鼠标悬停在其名称上,打开(快速)观察窗口或使用各种调试面板,如本地和汽车。

     

如果要查找引用的位置或未设置,请右键单击其名称并选择“#34;查找所有引用”&#34;。然后,您可以在每个找到的位置放置一个断点,并在附加调试器的情况下运行程序。每次调试器在这样的断点上中断时,您需要确定是否期望引用为非null,检查变量并验证它是否指向实例。

     

通过这种方式跟踪程序流程,您可以找到实例不应该为空的位置,以及为什么它没有正确设置。

我发现这些说明与语言无关。