Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
Validaçoes - C#
28-06-2009, 17:38
Mensagem: #1
Validaçoes - C#
Boas!

Estou aqui com uns problemas a finalizar o meu projecto da cadeira de Programação Orientada a Objectos.
O problema é com as excepções, queria validar vários campos (de textBox´s). Basicamente eles têm de ser validados antes de adicionar novo atleta. O que quero validar, é no campo da textBox2, apenas podem ser inseridos valores numéricos.

Deixo aqui o código:
Citar:private void button1_Click(object sender, EventArgs e)
{
toolStripStatusLabel1.Text = " ";
label10.Text = " ";


// O problema esta aqui, se isto for executado o programa "crasha"... Sad
/*int X = 0;
if (textBox2.Text != "")
{
try
{
X = int.Parse(textBox2.Text);
}
catch (Exception)
{
toolStripStatusLabel1.Text = ("Erro! Apenas valores numericos.");
}


}*/


Atleta a = new Atleta(textBox1.Text, int.Parse(textBox2.Text), int.Parse(textBox3.Text), textBox4.Text, textBox5.Text, comboBox1.Text, TimeSpan.Parse(textBox6.Text), TimeSpan.Parse(textBox7.Text));

if (a.TempoChegada < a.TempoPartida)
{
toolStripStatusLabel1.Text = ("Erro! O tempo de partida nunca poderá ser superior ao tempo de chegada.");
}
else if ((a.Idade < 10) || (a.Idade > 45))
{
toolStripStatusLabel1.Text = ("Erro! A idade que definiu não pode ser usada; Apenas entre 10 e 45 anos.");
}
else if ((textBox1.Text.Length <= 0) || (textBox2.Text.Length <= 0) || (textBox3.Text.Length <= 0) || (textBox4.Text.Length <= 0) || (textBox5.Text.Length <= 0) || (comboBox1.SelectedItem.ToString().Equals("Selecionar") || (textBox6.Text.Length <= 0) || (textBox7.Text.Length <= 0)))
{
toolStripStatusLabel1.Text = ("Erro! Ainda existem campos por preencher.");
}
else
{
a.Escalao = a.DeterminarEscalao();

a.TempoDeProva = a.determinatempoprova();

GestaoAtleta.atletas.Add(a);

label10.Text = GestaoAtleta.atletas.Count.ToString();

//show
dataGridView1.DataSource = null;
dataGridView1.DataSource = GestaoAtleta.atletas;

dataGridView1.Refresh();
toolStripStatusLabel1.Text = ("Atleta adicionado com sucesso!");
//Clean();
}
}

Outro problema esta ainda na validação:

Citar:else if ((textBox1.Text.Length <= 0) || (textBox2.Text.Length <= 0) || (textBox3.Text.Length <= 0) || (textBox4.Text.Length <= 0) || (textBox5.Text.Length <= 0) || (comboBox1.SelectedItem.ToString().Equals("Selecionar") || (textBox6.Text.Length <= 0) || (textBox7.Text.Length <= 0)))
{
toolStripStatusLabel1.Text = ("Erro! Ainda existem campos por preencher.");
}

Aquando da execução do programa, se meter nenhum campo sem nada... isso não funciona, porque os campos da textBox2, textBox3 são numéricos e da textbox6 e textBox7 são TimeSpan... ou seja não são do tipo .text, se o utilizador não meter nenhum destes (textBox2, textBox3, textbox6 e textBox7) o programa "crasha".

Ajudem-me pro favor... amanhã tenho de entregar isto. Sad
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Mensagem neste Tópico
Validaçoes - C# - Harvarde - 28-06-2009 17:38
RE: Validaçoes - C# - RaCcOn - 28-06-2009, 23:07
RE: Validaçoes - C# - Harvarde - 29-06-2009, 12:16
RE: Validaçoes - C# - RaCcOn - 29-06-2009, 13:57
RE: Validaçoes - C# - Harvarde - 30-06-2009, 19:32
RE: Validaçoes - C# - lukaz - 01-07-2009, 00:57
RE: Validaçoes - C# - Harvarde - 01-07-2009, 11:07
RE: Validaçoes - C# - lukaz - 01-07-2009, 15:47
RE: Validaçoes - C# - Harvarde - 01-07-2009, 21:50
RE: Validaçoes - C# - Shogun - 01-07-2009, 22:00

Saltar Fórum:


Utilizadores a ver este tópico: 3 Visitante(s)