/*★ 矢印キーで画像を操作 前田 稔 ★*/
using System;
using System.Drawing;
using System.Windows.Forms;
public class MyForm : Form
{
IMAGE App;
int xp,yp;
public MyForm()
{
this.Width = 600;
this.Height = 400;
App = new IMAGE(@"c:\data\test\kishi.gif");
xp = yp = 100;
Paint += new PaintEventHandler(MyHandler);
}
private void MyHandler(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
if (App.bmp == null) Application.Exit();
App.View(g, xp, yp);
}
protected override void OnKeyDown(KeyEventArgs e)
{
switch(e.KeyCode)
{ case Keys.Escape:
Application.Exit();
break;
case Keys.Down:
yp += 2;
break;
case Keys.Up:
yp -= 2;
break;
case Keys.Right:
xp += 2;
break;
case Keys.Left:
xp -= 2;
break;
}
Invalidate();
}
}
//☆ IMAGE Class の定義
class IMAGE
{
public Bitmap bmp;
// Constructor
public IMAGE(string file)
{
try
{ bmp= new Bitmap(file); }
catch
{ MessageBox.Show("イメージが取得できません", "Error"); }
}
// 画像を描画する View() 関数
public void View(Graphics g, int x, int y)
{ if (bmp!=null) g.DrawImage(bmp,x,y); }
}
// form01 Main() 関数
class form01
{
public static void Main()
{ MyForm mf = new MyForm();
Application.Run(mf);
}
}
|