using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

 

namespace WindowsFormsApplication1

{

    public partial class Form1 : Form

    {

        Button[,] buttons = new Button[10, 10];

        int[] array = new int[10];

 

        public Form1()

        {

            InitializeComponent();

        }

 

        private void Form1_Load(object sender, EventArgs e)

        {

            // Instantiating all the buttons in the array

 

 

 

            for (int i = 0; i < 9; i++)

            {

                array[i] = i;

            }

 

 

            /*

            for (int j = 1; j < 10; j++)

            {

                buttons[1, j] = new Button();

                buttons[1, j].Location = new Point(50 * j, 50);

                buttons[1, j].Text = array[j].ToString();

                this.Controls.Add(buttons[1, j]);

            }

            */

 

            for (int j = 0; j < 3; j++)

            {

                for (int i = 0; i < 3; i++)

                {

                    buttons[i, j] = new Button();

                    buttons[i, j].Location = new Point(j * 50, i * 50);

                    buttons[i, j].Text = (j * 3 + i).ToString();

                    this.Controls.Add(buttons[i, j]);

                    buttons[i, j].Click += new EventHandler(Button1_Click);

                }

            }

        }

 

        private void Button1_Click(object sender, EventArgs e)

        {

            for (int i = 0; i < 3; i++)

            {

                for (int j = 0; j < 3; j++)

                {

                    if (buttons[i, j].Text == "0")

                    {

                        //MessageBox.Show("i=" + i + ",j=" + j + " " + buttons[i, j].Text);

                    }

                }

 

 

            }

 

 

 

 

            for (int i = 0; i < 3; i++)

            {

                for (int j = 0; j < 3; j++)

                {

                    if (sender == buttons[i, j])

                    {

                        movement(i, j, buttons[i, j].Text);

                      

                    }

                }

 

 

            }

 

 

 

 

        }

 

        private void movement(int i, int j, string s)

        {

            MessageBox.Show("i=" + i + ",j=" + j + " " + s);

 

            MessageBox.Show("i=" + i  + ",j-1=" + (j-1) + " " + buttons[i, j-1].Text);

            string stmp;

 

            if (buttons[i, j - 1].Text == "0")

            {

                stmp = buttons[i, j].Text;

                buttons[i, j].Text = buttons[i, j-1].Text;

                buttons[i, j - 1].Text = stmp;

            }

 

        }

 

 

        private void button1_Click_1(object sender, EventArgs e)

        {

                int d1, tmp, k;

 

            Random irand = new Random();

            d1 = irand.Next(1, 10);

            label1.Text = d1.ToString();

 

 

            for (int j = 1; j < 10; j++)

            {

                k = 9 - j + 1;

                tmp = array[d1];

                array[d1] = array[k];

                array[k] = tmp;

            }

 

 

            for (int j = 0; j < 3; j++)

            {

                for (int i = 0; i < 3; i++)

                {

                    //buttons[i, j] = new Button();

                    buttons[i, j].Location = new Point(j * 50, i * 50);

                    buttons[i, j].Text = array[i*3+j+1].ToString();

                    this.Controls.Add(buttons[i, j]);

                }

            }

 

 

 

 

 

 

            //buttons[1, 1].Text = array[1].ToString();

 

            /*

            for (int j = 1; j < 10; j++)

            {

                //    buttons[1, j] = new Button();

                buttons[1, j].Location = new Point(50 * j, 50);

                buttons[1, j].Text = array[j].ToString();

                this.Controls.Add(buttons[1, j]);

            }

             */

 

 

            label2.Text = array[d1].ToString();

 

        }

  

        }

 

  

}

創作者介紹
創作者 王宗華 的頭像
ray800528

王宗華

ray800528 發表在 痞客邦 留言(0) 人氣( 9 )