エラーを回避するには?

解決


あつ  2009-03-06 09:26:57  No: 141640

下記を実行すると以下のようなエラーメッセージが出てしまいます。
どの様にすればエラー回避出来るのでしょうか?

変数'BMP'は、値が割り当てられる前に使用されています。Null参照の例外が実行時に発生する可能性があります。

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim bmp As Bitmap
        Dim g As Graphics
        Dim img As Image
        Dim imst(2) As Integer
        '画像を作成する
        'Dim bmp As New Bitmap("C:\test.bmp")
        '画像データをクリップボードにコピーする
        Clipboard.SetDataObject(PictureBox1.Image, False)
        '後片付け
        'PictureBox1.Image.Dispose()
        'クリップボードにあるデータの取得
        Dim d As IDataObject = Clipboard.GetDataObject()
        'ビットマップデータ形式に関連付けられているデータを取得
        img = CType(d.GetData(DataFormats.Bitmap), Image)
        If Not (img Is Nothing) Then
            'データが取得できたときは表示する
            PictureBox1.Image = img
        End If
        Select Case Kaizoudo(1)
            Case 700
                bmp = New Bitmap(1280, 960)
                imst(1) = 1280
                imst(2) = 960
            Case 400
                bmp = New Bitmap(640, 480)
                imst(1) = 640
                imst(2) = 480
            Case 280
                bmp = New Bitmap(320, 240)
                imst(1) = 320
                imst(2) = 240
        End Select
        PictureBox1.Image = bmp
        g = Graphics.FromImage(PictureBox1.Image)
        img = Image.FromFile("C:\test.jpg")
        g.DrawImage(img, 0, 0, imst(1), imst(2))
        img.Dispose()
        PictureBox1.Image.Save("C:\test2.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)
    End Sub


太郎冠者  2009-03-06 11:55:25  No: 141641

エラーじゃなくて警告ですね。
気になるなら初期化しましょう。

Dim bmp As Bitmap = Nothing


あつ  2009-03-06 15:39:48  No: 141642

太郎冠者さんありがとうございます。
警告が消えました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加