Flag... Items.
Boa noite pessoal!
Tenho esse bloco de códigos:
Não sei o que faz esse flag, alguém pode me explicar? E na onde item recebe valor p/ comparar com o textBox?
Tenho esse bloco de códigos:
private void button1_Click(object sender, EventArgs e) { if (textBox1.Text.Replace( , ) != ) { bool flag = false; foreach(string item in listBox1.Items) { if (textBox1.Text.ToUpper() == item.ToUpper()) { flag = true; break; } } if(!flag) listBox1.Items.Add(textBox1.Text); } else MessageBox.Show(Campo Vazio!!); }
Não sei o que faz esse flag, alguém pode me explicar? E na onde item recebe valor p/ comparar com o textBox?
Willian
Curtidas 0
Respostas
Joel Rodrigues
04/06/2012
Olá.
A função desse ´flag´ está sendo verificar se o texto digitado no TextBox1 já existe no ListBox. Caso exista, flag=true. Ao final da verificação, se o flag for falso, ou seja, não existe o item na lista, então o texto é adicionado ao ListBox.
Espero ter ajudado.
Boa sorte.
A função desse ´flag´ está sendo verificar se o texto digitado no TextBox1 já existe no ListBox. Caso exista, flag=true. Ao final da verificação, se o flag for falso, ou seja, não existe o item na lista, então o texto é adicionado ao ListBox.
Espero ter ajudado.
Boa sorte.
GOSTEI 0
Willian
04/06/2012
Ainda estou com dúvidas, foi criado uma variável flag do tipo boll recebendo valor false. Certo, criou uma variável item p/ representar os items do listBox, não é? Então se o que for digitado no textBox for igual ao item o flag receberá true, mas como é que ele sabe que não deve ser feito nada? Quero dizer, eu digitei um valor igual ao da lista e realmente não foi adicionado. Mas não consegui ver aí como ele sabe que não deverá fazer nada, pois o flag recebe true, só isso, uma variável recebendo true impediu que adicionasse um outro elemento na lista?! Ou ele não adiciona por causa do outro if que diz se !flag ele adiciona, então automaticamente o contrário disso não faz nada! Devo estar complicando tudo mas é que sou desse jeito mesmo, até não ficar claro tudo perfeitamente... fico imaginando coisas aqui e as complicando. Aliás, exclamação + flag significa diferente de flag?
Agradeço a atenção.
Agradeço a atenção.
GOSTEI 0
Joel Rodrigues
04/06/2012
Exatamente! Basta você dizer SE ISSO, FAÇA AQUILO. O contrário já fica subentendido.
No código
O item só é adicionado se !flag, ou seja, se flag for false. Caso flag seja true, não há nada definido para essa situação, logo, nada será feito.
No código
if(!flag) listBox1.Items.Add(textBox1.Text);
O item só é adicionado se !flag, ou seja, se flag for false. Caso flag seja true, não há nada definido para essa situação, logo, nada será feito.
GOSTEI 0