Colocar invisible un botón de un frame, desde otra clase :D
Realmente mi propósito es crear un control de accesos de usuario a cada botón y ventana en mi interfaz de mi programa. Como se podrán imaginar habría que validar más de 100 accesos.
Si ustedes saben una manera sencilla de hacerlo seria de gran ayuda por ahora tengo esto:
Tengo una clase usuarios_accesos la cual tiene un método validar_accesos... Esta clase, hace una consulta a la base de datos para mirar que códigos de acceso tiene este usuario que acabo de ingresar por un login. Luego lo que hago es validar si es administrador, si lo es simplemente se abre la interfaz completa, pero si no lo es, empieza a validar los accesos.
public void validar_permisos(String usuarioBD, String tipo_usuarioBD){
int cont=0;
String []usuario_acceso = new String [1];
try {
ResultSet rs= cn.SeleccionarDatos("cod_usuario,cod_acceso", "usuario_acceso", "cod_usuario='"+usuarioBD+"' ");
while (rs.next()){
usuario_acceso[0]=rs.getString("cod_acceso");
cont++;
System.out.println(usuario_acceso[0]);
}
//es adminitrador??
if ("1".equals(tipo_usuarioBD)) {
modulos.setVisible(true);
}else{
for (int i = 0; i < cont; i++) {
if ("1".equals(usuario_acceso[i])) {
System.out.println("SI TIENE ACCESO");
}else{
modulos.Vfacturacionbtn();
System.out.println("no tiene acceso a la ventana");
}
if ("2".equals(usuario_acceso[i])) {
System.out.println("SI TIENE ACCESO A PRODUCTOS");
}else{
modulos.Vproductosbtn();
System.out.println("no tiene acceso a la ventana");
}
}
modulos.setVisible(true);
}
}catch (SQLException ex) {
System.out.print("ERROR EN LA CLASE USUARIO_ACCESO: "+ex);
}
}
Pero tengo un error en el for valida los dos condicionales que tengo y después el programa saca error ... Además al final de que valida trato de mostrar mi interfaz como si me hubiera guardado los visible(true).. Pero creo que tampoco se hace así.
¿Igual no se si es la mejor manera de hacerlo ya que estos son solo dos pero tendría que validar más de 100... Como puedo hacerlo mejor?
__________________________________________________
Como verán no se como habilitar y deshabilitar los botones de el otro frame desde esta clase.
Así que cree unos métodos en mi interfaz Principal que es el jframe de esta manera:
public void Vfacturacionbtn(){
facturacion_boton.setVisible(false);
}
public void Vproductosbtn(){
productos_boton.setVisible(false);
}
Para así poder llamar a mis botones y ponerlos invibles. Ya que intente con getters y setters y no funciono y ahora así tampoco