[Resolvido]Incompatible types:String cannot be converted to byte[]

Estou desenvolvendo uma aplicação java para desktop em que apresenta a imagem do usuário cadastrado no banco de dados, em um TextView, mas ao pegar o conteudo da lblImagemUsuario.getText() que contem a imagem e passar para outra tela chamada Cadastro_Cliente pelo construtor e com o evento jLabel7MouseClicked ele apresenta esse erro Incompatible types:String cannot be converted to byte[]

public Principal(String user,byte[] imagem) throws ClassNotFoundException {

    initComponents();
      ManipularImagem.exibiImagemLabel(imagem, lblImagemUsuario);
    lblUsuario.setText(user);
    this.setExtendedState(MAXIMIZED_BOTH);
    setLocationRelativeTo(null);
    

}

private void jLabel7MouseClicked(java.awt.event.MouseEvent evt) {                                     
    // TODO add your handling code here:
    
    Cadastro_Cliente pro = new Cadastro_Cliente(lblUsuario.getText(),lblImagemUsuario.getText());//Incompatible types:String cannot be converted to byte[]
    pro.setVisible(true);
}

Tela de Cadastro_Cliente

 public Cadastro_Cliente(String user,byte[] imagem) {
    initComponents();
     ManipularImagem.exibiImagemLabel(imagem, lblImagemUsuario);
    setExtendedState(JFrame.MAXIMIZED_BOTH);
    jLabel24Usuario.setText(user);
    txtCodigo.setText("1");
    Codigo();
}

Ola,

O construtor Cadastro_Cliente espera receber bytes e voce esta passando string.

quando voce faz getText voce esta pegando o texto e não os byte

essa é minha duvida como vou pegar bytes a imagem que esta em uma lbl ?

Tente

Icon icon = label.getIcon();
BufferedImage image = new BufferedImage(icon.getIconWidth(),icon.getIconHeight(),BufferedImage.TYPE_INT_RGB);
ByteArrayOutputStream b = new ByteArrayOutputStream();
ImageIO.write(image, "jpg", b );
byte[] imageInByte = b.toByteArray();

coloquei assim mas quando vou para tela de Cadastro_Cliente não mostra a imagem

 private void jLabel7MouseClicked(java.awt.event.MouseEvent evt) {                                     
    // TODO add your handling code here:

    
 
    try {
           Icon icon = lblImagemUsuario.getIcon();
     BufferedImage image = new 
  BufferedImage(icon.getIconWidth(),icon.getIconHeight(),BufferedImage.TYPE_INT_RGB);
  ByteArrayOutputStream b = new ByteArrayOutputStream();
        ImageIO.write(image, "jpg", b );
        byte[] imageInByte = b.toByteArray();
        Cadastro_Cliente pro = new Cadastro_Cliente(lblUsuario.getText(),imageInByte);
    pro.setVisible(true);
    } catch (IOException ex) {
        JOptionPane.showMessageDialog(null, "erro"+ex);
    }


    
}   

Tela Cadastro_Cliente

public Cadastro_Cliente(String user,byte[] imagem) {
    initComponents();
    //setLocationRelativeTo(null);
     ManipularImagem.exibiImagemLabel(imagem, lblImagemUsuario);
    setExtendedState(JFrame.MAXIMIZED_BOTH);
    jLabel24Usuario.setText(user);
    txtCodigo.setText("1");
    Codigo();
}

Virificou se a imagem esta null?
verificou se lblImagemUsuario esta nas duas telas?
verificou se existe algum componente tampando a imagem?
etc

quando ele é redirecionado para pagina de Cadastro_Cliente , a label que era pra mostrar a imagem fica assim:

oque isso faz?, post o codigo

ele pega a imagem e coloca em um Label

ele pega a imagem e coloca em um Label

Teste assim:

public Cadastro_Cliente(String user,Icon icon) {
    initComponents();
    //setLocationRelativeTo(null);
//     ManipularImagem.exibiImagemLabel(imagem, lblImagemUsuario);
    lblImagemUsuario.setIcon(icon)
    setExtendedState(JFrame.MAXIMIZED_BOTH);
    jLabel24Usuario.setText(user);
    txtCodigo.setText("1");
    Codigo();
}
Cadastro_Cliente pro = new Cadastro_Cliente(lblUsuario.getText(), lblImagemUsuario.getIcon());
1 curtida

funcionou man obrigado, você é o cara