Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Débora de Oliveira

Visibilidade de label

Recommended Posts

Olá pessoal meu problema é o seguinte, estou criando um programinha que testa a força da senha, qd for fraca fica vermelho, media fica amarela e forte fica verde, eu desenhei um label para cada caso, o problema é que quando eu digito uma senha fraca e dpois uma senha forte a label vermelha da senha fraca não desaparece,isso é para todos os casos, já tentei colocar um L1.setVisible(false) ' L1(label que possui a força fraca) ' para ela não ficar visivel mas não adianta, acho que estou fzd algo de errado pois teria que funcionar, vou postar um pedaço do meu código.

 

if (forca <= 1) {   
			setLayout(null);   
			L1=new JLabel("FRACA",L1.CENTER);   
			Font f = new Font("Lucida Sans", Font.BOLD, 10);   
			L1.setFont(f);   
			add(L1);   
			L1.setSize(45,20);   
			L1.setLocation(105,93);   
			L1.setBackground(Color.RED);   
			L1.setForeground(Color.BLACK);   
			L1.setVisible(true);   
			L1.setOpaque(true);   
		 }   
		 else   
			 if (forca <=2 && forca >1){   
				setLayout(null);   
				L2=new JLabel("MEDIA",L2.CENTER);   
				Font f = new Font("Lucida Sans", Font.BOLD, 10);   
				L2.setFont(f);   
				add(L2);   
				L2.setSize(80,20);   
				L2.setLocation(105,93);   
				L2.setBackground(Color.YELLOW);   
				L2.setForeground(Color.BLACK);   
				L2.setVisible(true);   
				L2.setOpaque(true);   
				L1.setVisible(false);  //AQUI ESTOU COLOCANDO PARA A LABEL 1 SUMIR MAS NÃO FUNCIONA   
				 
				System.out.println(forca);   
				 
		 }

 

ALGUÉM PODE ME AJUDAR?O QUE FIZ DE ERRADO? http://forum.imasters.com.br/public/style_emoticons/default/natal_sad.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Porque ao invés disso não da um setText alterando o texto da mesma e um setForegroundColor para alterar a cor da fonte da mesma?

No seu caso acho que seria melhor.

Exemplo:

 

if (forca <= 1) {  
			setLayout(null);  
			L1=new JLabel("FRACA",L1.CENTER);  
			Font f = new Font("Lucida Sans", Font.BOLD, 10);  
			L1.setFont(f);  
			add(L1);  
			L1.setSize(45,20);  
			L1.setLocation(105,93);  
			L1.setBackground(Color.RED);  
			L1.setForeground(Color.BLACK);  
			L1.setVisible(true);  
			L1.setOpaque(true);  
}  
else if (forca <=2 && forca >1){  
	L1.setText("Media");
	L1.setBackground(Color.YELLOW);  
	L1.setForeground(Color.BLACK);   
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu tentei fazer isso, mas sempre quando coloco setText acontece um problema , minha tela antiga que eu digitava a senha some e aparece outra tela(outro JPanel) todo em branco

não entendi pq dá isso, o mesmo problema acontece qd dou setVisible

 

ele não está colocando o novo texto nessa label..e nem uma nova cor... será que você sabe porq desse erro?

 

 

Obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estranho.

Você situou seus itens em um jPanel ou etc? (jPanel.add(elemento, layoutPropertys)?

Se sim...tenta remover e adicionar (jPanel.remove(L1); jPanel.add(L2, layoutProperty)), e me diz o resultado.

 

Edit: me envia todo o source code de construção da GUI.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Título alterado de Label Visivel (ERRO) para Visibilidade de label

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, tenta colocar o setVisible antes de adiciona-lo.

 

 

if (forca <= 1) {   
			setLayout(null);   
			L1=new JLabel("FRACA",L1.CENTER);   
			Font f = new Font("Lucida Sans", Font.BOLD, 10);   
			L1.setFont(f);   
			L1.setSize(45,20);   
			L1.setLocation(105,93);   
			L1.setBackground(Color.RED);   
			L1.setForeground(Color.BLACK);   
			L1.setVisible(true);   
			L1.setOpaque(true);   
			add(L1);   
		 }   
		 else   
			 if (forca <=2 && forca >1){   
				setLayout(null);   
				L2=new JLabel("MEDIA",L2.CENTER);   
				Font f = new Font("Lucida Sans", Font.BOLD, 10);   
				L2.setFont(f);   

				L2.setSize(80,20);   
				L2.setLocation(105,93);   
				L2.setBackground(Color.YELLOW);   
				L2.setForeground(Color.BLACK);   
				L2.setVisible(true);   
				L2.setOpaque(true);   
				L1.setVisible(false);  //AQUI ESTOU COLOCANDO PARA A LABEL 1 SUMIR MAS NÃO FUNCIONA   
				 
				System.out.println(forca);   

			   add(L2);   
				 
		 }

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.