2017-08-17 5 views
0

私は単純なゲームを作ることでC#を学ぼうとしています。私はキーボードと別の画像ボックスで制御している画像ボックスを持っています。私がコントロールしているものを作る方法は、他の画像を移動し、どの画像ボックスが他の画像ボックスの上にあるかを選択する方法ですか?どのピクチャボックスが他のピクチャボックスの上にあるかを選択する方法は?

 public Form1() 
    { 
     InitializeComponent(); 
    } 
    int speed = 20; 
    Point xy = new Point(); 

    private void Form1_KeyPress(object sender, KeyPressEventArgs e) 
    { 
     xy = pic1.Location; 
     xy = Methods.MoveXY(xy, e,speed); 
     pic1.Location = xy; 

    } 

public static Point MoveXY(Point xy, KeyPressEventArgs e,int speed) 
    { 

     switch (e.KeyChar) 
     { 

      case 'd': 
       xy.X += speed; 
       break; 
      case 'a': 
       xy.X -= speed; 
       break; 
      case 'w': 

       xy.Y -= speed; 
       break; 
      case 's': 

       xy.Y += speed; 
       break; 


     } 

2つの画像ボックスは、フォーム1の設計者にドラッグアンドドロップすることによって作成されます。

+0

コードをお知らせください。 –

+1

https://stackoverflow.com/questions/3213270/how-to-set-z-order-of-a-control-using-winforms – Blorgbeard

答えて

0

両方を同じ親(おそらくフォーム)に置き、他の "上に"持ちたいピクチャボックスのメソッドBringToFront()を呼び出します。

また、1つのピクチャボックスを別のピクチャボックスに配置することもできます。このようにして、内側のものは常にもう一方の上にあります(それは親です)。

関連する問題