Colegas, sou iniciante e reutilizando a função abaixo para meu sistema.
Preciso passar o valor do array para a função: LiberaTelasfilhas
Mas me retorna a mensagem de erro que o teste passado para a função não é um tipo compativel.
Sei que a variável é do tipo String e a função espera um java.swing.jMenu, mas eu não sei converter.
Podem me dar uma ajuda?
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
String[] jMenu = {"jMenu1","jMenu2"};
String teste;
for (int i = 0; i< jMenu.length; i++){
teste = jMenu[i];
System.out.println(teste);
LiberaTelasfilhas(teste);
}
Abaixo a função
public void LiberaTelasfilhas(javax.swing.JMenu menuPesq) {
javax.swing.JMenuItem menuItem2 = null;
javax.swing.JMenu menu2 = null;
java.awt.Component[] componentsFilhos;
componentsFilhos = menuPesq.getMenuComponents();
for (int i = 0; i < componentsFilhos.length; i++) {
menuItem2 = menuPesq.getItem(i);
System.out.println(" -> " + menuItem2.getText());
if (componentsFilhos[i] instanceof javax.swing.JMenu) {
menu2 = ((javax.swing.JMenu) componentsFilhos[i]);
//Aqui eu tento pegar o nome do JMenu, mas ele retorno nulo, ja o texto vem normal.
System.out.println(" -> " + menuItem2.getName() +"-"+ menuItem2.getText());
LiberaTelasfilhas(menu2);
}
}
}