2016-09-23 8 views
-1

私は変数を選択すると、画面上に笑顔を描くプログラムを作成しようとしています。別のメソッドにReadLine入力を使用する

私は以下を書いています。

私のプログラムは3つの質問をします。私は0と11の間の数字で答えるでしょう。私はこれらの答えを 'tekenscherm'という方法で使いたいと思います。どのようにこれらの変数をそのメソッドで呼び出すことができますか?

class HalloForm : Form 
{ 
    public string a,b,c = ""; //Declare them here. 
    public HalloForm() 
    { 
     this.Text = "Hallo"; 
     this.BackColor = Color.Yellow; 
     this.Size = new Size(800, 600); 
     this.Paint += this.tekenScherm; 
    } 

    public static void Main() 
    { 
     System.Console.WriteLine("Smiley size, on a scale of 1 tot 10?"); 
     string a = System.Console.ReadLine(); 
     Int32.Parse(a); 
     System.Console.WriteLine("X coordinate of the smiley, on a scale of 1 to 10"); 
     string b = System.Console.ReadLine(); 
     Int32.Parse(b); 
     System.Console.WriteLine("Y coordinate of the smiley, on a scale of 1 to 10"); 
     string c = System.Console.ReadLine(); 
     Int32.Parse(c); 
     HalloForm scherm; 
     scherm = new HalloForm(); 

     Application.Run(scherm); 
    } 
    void tekenScherm(object obj, PaintEventArgs pea) 
    { 

     SolidBrush blueBrush = new SolidBrush(Color.Blue); 
     Pen blackBrush = new Pen(Color.Black, 5); 
     int x = 360; 
     int y = x + 75; 
     pea.Graphics.FillEllipse(blueBrush, 300, 200, 200, 200); 
     pea.Graphics.DrawEllipse(blackBrush, 300, 200, 200, 200); 
     pea.Graphics.DrawArc(blackBrush, 350, 250, 100, 100, 45, 90); 
     pea.Graphics.DrawEllipse(blackBrush, a, 250, 5, 5); //I've used it here 
     pea.Graphics.DrawEllipse(blackBrush, y, 250, 5, 5); 
    } 
} 
+1

(英語であなたのケースのtekenSchermに:drawScreenを)すべての変数/関数名に名前を付けることをお勧めします。 –

+0

これは主に英語を話すウェブサイトです。英語ですべてを書くことをお勧めしたい場合は、別の言葉が見える瞬間、私はちょうど読書をやめます。 – Krythic

答えて

0

メソッドスコープ外の変数を整数として宣言します。

Int32.Parseは、これらの変数に割り当てられていない整数値を返します。したがって、基本的には何も使用していません。ここで

は、作業コードです:

class HalloForm : Form 
{ 
    public int a, b, c = 0; //Declare them here. 
    public HalloForm() 
    { 
     this.Text = "Hallo"; 
     this.BackColor = Color.Yellow; 
     this.Size = new Size(800, 600); 
     this.Paint += this.tekenScherm; 
    } 

    public static void Main() 
    { 
     System.Console.WriteLine("Smiley size, on a scale of 1 tot 10?"); 
     a = Int32.Parse(System.Console.ReadLine()); 
     System.Console.WriteLine("X coordinate of the smiley, on a scale of 1 to 10"); 
     b = Int32.Parse(System.Console.ReadLine()); 
     System.Console.WriteLine("Y coordinate of the smiley, on a scale of 1 to 10"); 
     c = Int32.Parse(System.Console.ReadLine()); 
     HalloForm scherm; 
     scherm = new HalloForm(); 

     Application.Run(scherm); 
    } 
    void tekenScherm(object obj, PaintEventArgs pea) 
    { 

     SolidBrush blueBrush = new SolidBrush(Color.Blue); 
     Pen blackBrush = new Pen(Color.Black, 5); 
     int x = 360; 
     int y = x + 75; 
     pea.Graphics.FillEllipse(blueBrush, 300, 200, 200, 200); 
     pea.Graphics.DrawEllipse(blackBrush, 300, 200, 200, 200); 
     pea.Graphics.DrawArc(blackBrush, 350, 250, 100, 100, 45, 90); 
     pea.Graphics.DrawEllipse(blackBrush, x, 250, 5, 5); 
     pea.Graphics.DrawEllipse(blackBrush, y, 250, 5, 5); 
    } 
} 
+0

しかし、たとえば、pea.Graphics.DrawEllipse(blackBrush、a、200、200、200)などで 'a'を使用するにはどうすればいいですか? ? – Whizkid95

+0

はい、そのクラス内のどのメソッドでも使用できます。 – ThePerplexedOne

+0

あなたのコードを使ってオリジナルの投稿を編集しました。しかし、それは私のためには機能しません。私はtekenSchermメソッドで 'a'を宣言する必要がありますか? – Whizkid95

関連する問題