Como desfazer item marcado?

Delphi

13/05/2010

É possível desfazer o que foi selecionado (marcado) em um item do radioGroup ou radioButton?   p.ex.: tenho um radioGroup com 2 itens (ItemA e ItemB) que já esta selecionado no ItemA e o usuario seleciona o ItemB.   No evento OnClick do radioGroup eu queria verificar uma condição qualquer e se esta condição for falso, então, eu não posso aceitar que o usuario selecione este ItemB, ou seja, eu preciso desfazer esta seleção (marcado) do ItemB e deixar como estava antes selecionado o ItemA.     Isso é possível?    
Rogerio

Rogerio

Curtidas 0

Respostas

Marco Salles

Marco Salles

13/05/2010

é o mesmo tópico né ??? procedure TForm1.RadioGroup1Click(Sender: TObject); begin case RadioGroup1.ItemIndex of 0:begin if edit1.Text = 'B' then RadioGroup1.ItemIndex:=1; end; 1:begin if edit1.Text = 'A' then RadioGroup1.ItemIndex:=0; end; end; end;
GOSTEI 0
Marco Salles

Marco Salles

13/05/2010

é o mesmo tópico né ??? procedure TForm1.RadioGroup1Click(Sender: TObject); begin case RadioGroup1.ItemIndex of 0:begin    if edit1.Text = 'B' then
       RadioGroup1.ItemIndex:=1;
  end;
1:begin     if edit1.Text = 'A' then
       RadioGroup1.ItemIndex:=0;
  end;
end;
end;
GOSTEI 0
Rogerio

Rogerio

13/05/2010

Sim Marco, eu criei um tópico com a mesma dúvida em outro forum. É que eu estou com uma certa urgência por isso que precisei fazer isso.
Obrigado por você estar me ajudando!  
GOSTEI 0
Rogerio

Rogerio

13/05/2010

Todo o problema ocorre no evento OnClick do componente RadioGroup. Este exemplo simula exatamente o que eu quero, é logico que esta errado, mas a ideia é está:procedure TForm1.RadioGroup1Click(Sender: TObject);
begin
   if then
    begin
       // faça algo....
    end
   else
    begin
      case RadioGroup1.ItemIndex of
        0 : RadioGroup1.ItemIndex := 1;
        1 : RadioGroup1.ItemIndex := 0;
      end;
    end;
end; p.ex.: Supondo que no RadioGroup tem dois itens (ItemA e ItemB). Ao iniciar o sistema é marcado o ItemA. Depois o usuário pode trocar a opção marcando o ItemB, mas é neste ponto que entra a questão. No evento OnClick do RadioGroup é verificado uma condição e se for Falso, então, eu não posso deixar que o usuário selecione o item desejado, tenho que eu desfazer o que o usuário fez, marcando o item anterior.
Atenção: Pessoal se houver algum código da VCL que faça com que o item que o usuário selecionou seja "desfeito", ou seja, como se fosse que o usuário marcou o item, mas atraves deste código não permite que este item seja selecionado (marcado). Já resolveria o meu problema, mas como eu não conheço.
Obrigado!
GOSTEI 0
Rogerio

Rogerio

13/05/2010

Obrigado a todos eu consegui resolver de outra maneira!    
GOSTEI 0
POSTAR