Preencher meu JtextField com minha variável

3 respostas
F

Amigos do Grupo, boa noite, estava com uma duvida e consultando o grupo, amigo Ricardo me ajudou e o programa deu prosseguimento, só que agora surgiu outra duvida, não consigo passar o valor de uma variável para um campo de texto , faço o comando, acho que certo, mas não aparece no campo de texto, abaixo segue a rotina e onde eu faço o comando , mas não obtenho sucesso, coloquei um OBS onde aplico o comando, que é logico esta errado.

package Formularios;

import static Formularios.FrmVisMusicas.txtpmusica;

import java.awt.Image;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileReader;

import javax.swing.ImageIcon;

public class FrmMusicaPlay extends javax.swing.JInternalFrame {

public static void main (String [] args){
    
}
private Object reader;

public FrmMusicaPlay() {
           initComponents();
           
private void BtnsairActionPerformed(java.awt.event.ActionEvent evt) {                                        

    this.dispose();
}                                       

private void btniniciarActionPerformed(java.awt.event.ActionEvent evt) {                                           
    // Cliquei no botão iniciar
      
  File arquivo = new File("C:\\MUSIC PLAY\\Musicas\\"+txtpmusica.getText()+".txt");
   try{
   BufferedReader ler = new BufferedReader(new FileReader(arquivo));
   String lin = ler.readLine();
   String[ ] notas = lin.split("\\s");       // trago as notas musicais (C F Gm7  D )
    for (String nota : notas) {
        String caracter = nota;
        if (caracter.equals("")) {    // Aqui gostaria de usar o comando If (caracter diferente de ""  mas 
                                                 não sei como é o comando "diferente de" para trabalhar com String
        } else {
         
         txtposicao.setText (caracter);     OBS : aqui é o problema, não aparece no txtposicao a 
                                                                        variável Strig caracter e tbm não  nenhum erro.
      
         ImageIcon imageIcon = new ImageIcon(new ImageIcon("c:/MUSIC PLAY/Notas/" 
        +txtposicao.getText()+".jpg").getImage().getScaledInstance(599,243,Image.
         SCALE_DEFAULT)); lblnota.setIcon(imageIcon);       // Aqui,coloco a imagem da nota.jpg 
                                                                                                 num label ===>  lblnota                                                                                              
            }
    }
 
}catch (Exception ex){
              
}                                          
            
    } //Fim do private void

private javax.swing.JButton Btnsair;
private javax.swing.JButton btniniciar;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JLabel lblnota;
private javax.swing.JLabel lblposicao;
private javax.swing.JTextArea txtareamus;
private javax.swing.JTextField txtposicao;
      

 } // Fim do Public Class

OBS : no projeto, existem a label ===> lblnota e o JtextField ===> txtposicao. Quando eu conseguir
colocar o valor da variável na caixa do texto, o programa vai funcionar e eu poderei termina-
lo, com a ajuda de um de vcs.

Fico muito agradecido pela ajuda. Fiquem com Deus.

Armando

3 Respostas

Jothar_Aleksander

Nesse caso, tu deve negar usando o operador negação !:

if (!caracter.equals(" ")) {

Eu faria direto assim:

for (String nota : notas) {
        if (nota.equals("")) {

Verificou se não está caindo na condição? Coloque um System.out.println() dentro da estrutura condicional:

if (!nota.equals(" ")) {   

	System.out.println("->[não vazio ] " + nota);

}else{
	
	System.out.println("->[vazio ]");
}

Daí veja o que está sendo retornado.

F

Amigo, obrigado pelo pronto atendimento, mas a parte do if, esta funcionando, meu maior problema até agora é que não consigo preencher o JtextField com a variável nota ou nota, quando faço,

System.out.println(nota);

Aparecem as notas das linha lidas na console, mas não consigo preencher o JtextField com o comando,

txtposicao.setText (nota);     OBS : sendo que eu tenho uma caixa de texto(JtextField) 
   chamada de txtposicao no projeto.

  A caixa de texto fica em branco, não recebe o valor da variável nota lidas.

Muito obrigado pela atenção.

Armando Barbosa

F

Show, usei o seu código com (!) e funcionou direitinho, usei somente um IF e faltava o (!) para fazer a negação, 10 ! show ! Agora vc pode ver porque não consigo preencher o JTextField com a variável “nota”, valeu meu camarada, muito obrigado, fique com Deus…

Criado 24 de agosto de 2019
Ultima resposta 24 de ago. de 2019
Respostas 3
Participantes 2