Olá a todos, estou com uma duvida. Estou criando um sistema de emissão de ordens de serviço, nele eu quero controlar a permissão de acesso por grupo de usuários mas estou enfrentando um sério problema, possuo um menu principal da aplicação onde tenho uma String que guarda o valor do perfil de acesso do usuario quando efetua o login, nesse menu possuo um JdesktopPane e as telas dele são todas JinternalFrames, eu gostaria de poder habilitar ou desabilitar botões dos JinternalFrames de forma dinamica, por exemplo ao abrir a tela ordens de servico se o usuario tem permissão de excluir ordem ele habilita o botão excluir, eu criei uma String na JInternalFrame de ordens de serviço que busca o valor, só que como os componentes carregam quando dou um OSColunas OS = new OSColunas(); o valor do construtor vem sempre nulo. Alguém conseguiria me ajudar?
Segue metodo que chama o JinternalFrame e dados do JInternalFrame:
no menu Jframe:
Param pm = new Param();
pm.setPerfil(Perfil);
OSColunas OS = new OSColunas();
OS.CheckPerfil(pm);
OS.setVisible(true);
Desktop.add(OS);
no JinternalFrame:
public OSColunas() {
initComponents();
con = conecta.getConnection();
telaDefault();
}
public void CheckPerfil(Param pm){
Perfil = pm.getPerfil();
System.out.println(Perfil);
}
public TelaDefault(){
String Query = “SELECT * from tab_nivel where nomenivel = ?”;
try {
stm = con.prepareStatement(Query);
stm.setString(1, Perfil);
rs = stm.executeQuery();
if (rs.next()) {
BtnNovo.setEnabled(rs.getBoolean(“oscol_cadastra”));
BtnExclui.setEnabled(rs.getBoolean(“oscol_exclui”));
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Erro ao tentar buscar dados de perfil de usuario no banco :" + e);
}
}