Jump to content
rsd_17

A referência de objecto não foi definida como uma instância de um objecto

Recommended Posts

rsd_17

estou a criar um metodo no jogo das Damas que perimite que as peças movam, entao numa textbos insiro a posiçao da peça que qero mover e depois guarda a na variavel aux, e o utilizador na mesma textbox (textboxposicao) insere a posicao para onde quer mover a peça 

Mas o metodo esta a dar me erro numa linha diz que 'A referência de objecto não foi definida como uma instância de um objecto ' 

Nao estou a conseguir resolver o problema alguem me pode ajudar?

Este é o metodo a linha que me da erro é a assinalada 

private void buttonAdicionarPedra_Click(object sender, EventArgs e)
        {
            Point peça_selecionada = new Point(-1,-1);//criamos uma variavel do tipo Point para guardar a posiçao da peça que vamos mexer
            //inicializamos-a na posiçao (-1,-1) porque estas posiçoes nao existem no tabuleiro
            char[] aux;
            Pedras pedra_aux;
            if (!this.seleçao)//se a peça nao tiver sido selecionada
            {
                aux = textBoxposicao.Text.ToCharArray(); //a variavel aux é um auxiliar para converter a textbox para vetor de carateres
              
                
                peça_selecionada = new Point(Convert.ToInt32(aux[0]), Convert.ToInt32(aux[1]));
                this.seleçao = true;//a peça foi selecionada
                buttonAdicionarPedra.Text = "Adicionar Pedra";//o botao muda de nome para AdicionarPedra
                textBoxposicao.Text = "";//coloca a textbox a branco novamente
                label1.Text = "Escolha para onde mover a peça";//muda o texto da label por cima da textbox posicao
            }
            else
            {//e a pedra foi selecionada 
               pedra_aux = play.ProcurarPedras(peça_selecionada);
                aux = textBoxposicao.Text.ToCharArray();
                pedra_aux.inserirposicao(Convert.ToInt32(aux[0]), Convert.ToInt32(aux[1]));//---------- da erro aqui 
                DesenhaPedras(play.Tabuleiro);
                buttonAdicionarPedra.Text = "Selecionar Peça";
                label1.Text = "Escolha a posição da peça que quer mover";
            }
           
            

        }

Este é o outro  metodo que uso neste metodo :

public void inserirposicao(int x, int y)//metodo criado para ajudar a guardar a posicao da peça q vamos mexer
        {
            Posiçao.X = x;
            Posiçao.Y = y;
        }

 

Share this post


Link to post
Share on other sites
antseq
1 hora atrás, rsd_17 disse:

Viva,

Penso que o erro deve estar aqui neste(s) "Posiçao" do método "inserirposicao":


        {
            Posiçao.X = x;
            Posiçao.Y = y;
        }

Este "Posiçao" está bem declarado e criado na classe "Pedras"?
 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.