none
演算子 '=' は、型 '課題.Form1.judge' および 'Integer' に対して定義されていません。 とエラーが出てしまいます。 RRS feed

  • 質問

  • 言語はVBで、課題なので投稿させていただきました。

    プログラミング初心者なのでよろしくお願いします。

    こんな質問してしまいすみません。

    開発環境はVisualBasic2010です。

    ソース

    Imports System.Data.SqlClient

    Public Class Form1

        Dim k As New Integer

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

            Dim Computerl As Computer = New Computer()

            Dim judgel As judge = New judge("グー", Computerl.showHand())

            Label1.Text = judgel.judgment

     

        End Sub

     

        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

            Dim Computerl As Computer = New Computer()

            Dim judgel As judge = New judge("チョキ", Computerl.showHand())

            Label1.Text = judgel.judgment

     

        End Sub

     

        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click, Button4.Click

            Dim Computerl As Computer = New Computer()

            Dim judgel As judge = New judge("パー", Computerl.showHand())

            Label1.Text = judgel.judgment

     

        End Sub

     

        Class Computer

            Function showHand() As String

                Dim i As Integer = New Random().Next(3)

                If i = 0 Then

                    Return "グー"

                ElseIf i = 1 Then

                    Return "チョキ"

                Else

                    Return "パー"

                End If

            End Function

        End Class

        Class judge

            Public judgment As String = "コンピューターは"

            Private _p1 As String

     

            Public Sub New(ByVal playerHand As String, ByVal computerHand As String)

                Dim k As Boolean

     

                judgment = judgment & computerHand

                If playerHand = computerHand Then

                    judgment = judgment & "引き分けです"

                    k = 1

                ElseIf (playerHand = "グー" And computerHand = "チョキ") Or

                        (playerHand = "チョキ" And computerHand = "パー") Or

                        (playerHand = "パー" And computerHand = "グー") Then

                    judgment = judgment & "貴方の勝ちです"

                    k = 2

                Else

                    judgment = judgment & "私の勝ちです"

                    k = 3

                End If

     

            End Sub

     

            Sub New(ByVal p1 As String)

                ' TODO: Complete member initialization 

                _p1 = p1

            End Sub

     

            Sub New()

                ' TODO: Complete member initialization 

            End Sub

     

        End Class

     

     

        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

            Dim k As New judge

     

            If k = 1 Then

                PictureBox1.Image = Image.FromFile("C:\Users\uknow\Desktop\ico\warn.ico")

            End If

            If k = 2 Then

                PictureBox1.Image = Image.FromFile("C:\Users\uknow\Desktop\ico\SysReqMet.ico")

            End If

            If k = 3 Then

                PictureBox1.Image = Image.FromFile("C:\Users\uknow\Desktop\ico\stop.ico")

            End If

     

        End Sub

    End Class

     

    2010年9月13日 16:06

回答

  • 課題とか書くと、「宿題は自分でやれ」と言われますよ^^;

    とりあえず、ヒントくらいは。

    変数 kの役割を考えてください。
    ・何のために用意されているか
    ・どのような型の値が代入されるか
    ・どこで宣言され、どのようなスコープを持つか
    #というか、ほぼ上記が答えです^^;

    今のままだと、勝負がついた「後」に画像は変わりません。
    あと、今のままだとグーの時しか勝てません^^;

    • 回答の候補に設定 山本春海 2010年9月22日 2:23
    • 回答としてマーク 山本春海 2010年9月27日 8:19
    2010年9月13日 16:41
  • 言語はVBで、課題なので投稿させていただきました。

    プログラミング初心者なのでよろしくお願いします。


    プログラミング初心者なら、基礎からしっかり勉強しておいた方がいいと思います。下記のサイトがVisual Basic について丁寧に解説していて、初心者にお勧めです。

    http://homepage1.nifty.com/rucio/main/main.htm


    なかむら(http://d.hatena.ne.jp/griefworker)
    • 回答の候補に設定 山本春海 2010年9月22日 2:23
    • 回答としてマーク 山本春海 2010年9月27日 8:19
    2010年9月14日 1:41

すべての返信

  • 課題とか書くと、「宿題は自分でやれ」と言われますよ^^;

    とりあえず、ヒントくらいは。

    変数 kの役割を考えてください。
    ・何のために用意されているか
    ・どのような型の値が代入されるか
    ・どこで宣言され、どのようなスコープを持つか
    #というか、ほぼ上記が答えです^^;

    今のままだと、勝負がついた「後」に画像は変わりません。
    あと、今のままだとグーの時しか勝てません^^;

    • 回答の候補に設定 山本春海 2010年9月22日 2:23
    • 回答としてマーク 山本春海 2010年9月27日 8:19
    2010年9月13日 16:41
  • 言語はVBで、課題なので投稿させていただきました。

    プログラミング初心者なのでよろしくお願いします。


    プログラミング初心者なら、基礎からしっかり勉強しておいた方がいいと思います。下記のサイトがVisual Basic について丁寧に解説していて、初心者にお勧めです。

    http://homepage1.nifty.com/rucio/main/main.htm


    なかむら(http://d.hatena.ne.jp/griefworker)
    • 回答の候補に設定 山本春海 2010年9月22日 2:23
    • 回答としてマーク 山本春海 2010年9月27日 8:19
    2010年9月14日 1:41
  • こんにちは、Uknowen さん。

    MSDN フォーラムのご利用ありがとうございます。フォーラム オペレーターの山本です。

    "課題" ということで、もう提出期限は過ぎてしまっているかと思いますが、その後いかがでしょうか。

    Chuki さんや なかむら さんからの情報は確認いただけましたか?
    お二人からの情報は有効な情報であると思われますので、勝手ながら私のほうで回答としてマークさせていただきました。
    Chuki さん、なかむら さん、アドバイスありがとうございます。

    今後、同じ問題でスレッドを参照される方にも、有効な情報がわかりやすくなるかと思いますので、参考になる情報や解決に役立った情報などには、回答としてマークをお願いしています。

    私のほうで一旦回答としてマークさせていただきましたが、もし不明点などがあれば、内容をお知らせいただいて、ご質問を続けてくださいね。
    今後とも、MSDN フォーラムをよろしくお願いいたします。
    それでは。
                                                    
    マイクロソフト株式会社 フォーラム オペレーター 山本 春海

    2010年9月27日 8:32
  • 返信遅くなりましたが

    どうもありがとうございました。

    VBは初めて踏み込んだ言語なのでしっかり基礎から学んでいこうと思います。

    2010年10月12日 10:57
  • 遅くなりましたが丁寧な解説どうもありがとうございました

    しっかりと基礎から学んでいこうと思います

    2010年10月12日 10:58