Tesko ce ti ici programiranje bez engleskog, probaj da ih radis paralelno. Mozda nesto ovako, ovo nije testirano, samo je iz glave pa ce mozda trebati male izmene, probaj da se igras sa time. Takodje pogledaj tutorijale koje je postavi @Markonije, sigurno mozes da izvuces nesto odatle.
Kod:
namespace Igra_2
{
public partial class FormView : Form
{
enum Position
{
Left, Right, Up, Down
}
private int _x;
private int _y;
private Position _objPosition;
private bool changePos; //proverava da li pozicija treba da bude promenjena, postravis na true kada hoces da menjas poziciju a na false inace
public FormView()
{
InitializeComponent();
_x = 50;
_y = 50;
_objPosition = Position.Down;
changePos = false;
}
private void FormView_Paint(object sender, PaintEventArgs e)
{
e.Graphics.FillRectangle(Brushes.Green, _x, _y, 100, 100);
}
private void timerMoving_Tick(object sender, EventArgs e)
{
if(changePos == true) //proverava da li pozicija treba da bude promenjena
{
if(_objPosition==Position.Right)
{
_x += 10;
}
else if (_objPosition == Position.Left)
{
_x -= 10;
}
else if (_objPosition == Position.Up)
{
_y -= 10;
}
else if (_objPosition == Position.Down)
{
_y += 10;
}
changePos = false;
}
Invalidate();
}
private void FormView_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode==Keys.Left)
{
_objPosition = Position.Left;
changePos = true;
}
else if(e.KeyCode==Keys.Right)
{
_objPosition = Position.Right;
changePos = true;
}
else if (e.KeyCode == Keys.Up)
{
_objPosition = Position.Up;
changePos = true;
}
else if (e.KeyCode == Keys.Down)
{
_objPosition = Position.Down;
changePos = true;
}
}
}
}