QUICK TIPS: Manipulando items de um RadioGroup isoladamente.

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (1)  (0)

Olá pessoal, tenho mais uma quick tip para vocês.



Olá pessoal, tenho mais uma quick tip para vocês. É muito comum utilizarmos RadioGroups para fornecer opções para o usuário selecionar, porém, já me ocorreu de precisar desabilitar apenas uma opção específica do RadioGroup, já vi alguns casos em que se deixava de usar o RadioGroup e trocava-se por um GroupBox com RadioButtons individuais, para que se pudesse controlar os mesmos, porém isso não é necessário, pois podemos usar a property Controls do RadioGroup(na verdade essa property é herdada da classe TWinControl). Para isso, poderíamos usar o seguinte código.



Com este código, desabilitamos apenas o primeiro item do RadioGroup. Conforme podemos ver na imagem abaixo.

 

Poderíamos também tornar a opção invisível, alterando a propriedade visible ao invés de enabled.

Já que estamos falando de dicas rápidas e de RadioGroups, vamos a mais uma dica.
É muito comum também, utilizarmos RadioGroup como opção de filtros de relatórios e depois colocamos no cabeçalho do relatório qual o filtro que foi selecionado pelo usuário. Uma maneira tradicional e óbvia de se fazer isso é a seguinte:

 

Porém, poderíamos transformar estas quatro linhas em uma só. Nós definimos na propriedade “Items” do RadioGroup quais são os items que teremos. Se observarmos esta propriedade, veremos que ela é do tipo TStringList, com isso, podemos saber qual o item selecionado de maneira muito mais simples, bastando passar o índice selecionado para este stringList, assim poderíamos trocar o bloco de código acima pelo seguinte:

 

Dessa forma, deixamos o código mais limpo e se precisarmos inserir uma nova opção no RadioGroup não teremos que mexer neste bloco de código.

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?