Login dinámico

Que tal buenos días disculpa que te moleste estoy realizando un login dinámico con netbeans en destokp y realizando logre habilitar cierto jmenu para ciertos usuarios y para otros no pero ahora cuando pongo un jbutton le agrego una imagen
Como hago para poder bloquear ese jbutton para ciertos usuarios
No logro hacer

1 Respuesta

Respuesta
1
Para ti también, ¿te refieres a que el botón este inhabilitado para ciertos usuarios?
Si es así solo debes verificar el los permisos y darle al momento de cargar los permisos
nombre_del_boton.setEnable(false);
¿A eso te referías? Espero haber acertado porque noto un poco confusa tu pregunta
Es que no logro darle con le código ya logre bloquear la barra menu para ciertos usuarios te parece si te paso mi código y lo verificas
Ok dale
Con este código entro y me da permisos según crea conveniente en el menu que viene a ser jmenubar
Pero si en el jframe tengo por ejemplo un jbutton como lo bloqueo o lo hago invisible para ciertos usuarios
try
{
String b,p;
bd_manager obj = new bd_manager();
String sql;
JFrmMdi m =new JFrmMdi();
ResultSet rs;
String contraseña;
contraseña =jPasswordField1.getText();
sql="select ClvUsuario,Usuario,Contraseña,Archivo,IniciarSesion,CerrarSesion,RegistroDeUsuario,SalirDeAplicacion,Clientes,RegistroDeClientes,Pagos,RegistroDePagos,EmisionesOrdenes,Reportes,ReporteDeIngresos,ReporteDePagos,ReporteDeOrdenes,Herramientas,Calculadora,RespaldarBd,RestaurarBd,Ayuda,MostrarAyuda,AcercaDe from tblusuario where Usuario='" + this.jTextField1.getText() + "' and Contraseña='" + contraseña + "'";
rs= obj.consultar(sql);
b=jTextField1.getText();
//p=jTextField2.getText();
p=contraseña;
boolean encuentra=false;
while (rs.next())
{
if(b.equals(rs.getString(2))&& p.equals(rs.getString(3)))
{
m.getJMenuBar().getMenu(0).getModel().setEnabled(rs.getBoolean(4));
m.getJMenuBar().getMenu(0).getItem(0).getModel().setEnabled(rs.getBoolean(5));
// m.getJMenuBar().getMenu(0).getItem(0).getModel().setEnabled(false);
m.getJMenuBar().getMenu(0).getItem(1).getModel().setEnabled(rs.getBoolean(6));
m.getJMenuBar().getMenu(0).getItem(2).getModel().setEnabled(rs.getBoolean(7));
m.getJMenuBar().getMenu(0).getItem(3).getModel().setEnabled(rs.getBoolean(8));
m.getJMenuBar().getMenu(1).getModel().setEnabled(rs.getBoolean(9));
m.getJMenuBar().getMenu(1).getItem(0).getModel().setEnabled(rs.getBoolean(10));
m.getJMenuBar().getMenu(2).getModel().setEnabled(rs.getBoolean(11));
m.getJMenuBar().getMenu(2).getItem(0).getModel().setEnabled(rs.getBoolean(12));
m.getJMenuBar().getMenu(2).getItem(1).getModel().setEnabled(rs.getBoolean(13));
m.getJMenuBar().getMenu(3).getModel().setEnabled(rs.getBoolean(14));
m.getJMenuBar().getMenu(3).getItem(0).getModel().setEnabled(rs.getBoolean(15));
m.getJMenuBar().getMenu(3).getItem(1).getModel().setEnabled(rs.getBoolean(16));
m.getJMenuBar().getMenu(3).getItem(2).getModel().setEnabled(rs.getBoolean(17));
m.getJMenuBar().getMenu(4).getModel().setEnabled(rs.getBoolean(18));
m.getJMenuBar().getMenu(4).getItem(0).getModel().setEnabled(rs.getBoolean(19));
m.getJMenuBar().getMenu(4).getItem(1).getModel().setEnabled(rs.getBoolean(20));
m.getJMenuBar().getMenu(4).getItem(2).getModel().setEnabled(rs.getBoolean(21));
m.getJMenuBar().getMenu(5).getModel().setEnabled(rs.getBoolean(22));
m.getJMenuBar().getMenu(5).getItem(0).getModel().setEnabled(rs.getBoolean(23));
m.getJMenuBar().getMenu(5).getItem(1).getModel().setEnabled(rs.getBoolean(24));
m.setVisible(true);
this.dispose();
encuentra=true;
}
}
if(encuentra==true)
{
m.getJMenuBar().getMenu(0).getItem(0).getModel().setEnabled(false);
}
if(encuentra==false)
{
jTextField1.requestFocus();
}
}catch (Exception ex) {
JOptionPane.showMessageDialog( null, "ERROR AL INTENTAR ABRIR LA TABLA", "ERROR", JOptionPane.ERROR_MESSAGE);
}
}
Hmmmmm, esta bien, lo bloqueas, esta perfecto, pero no entiendo en donde qiueres poner el boton, como te dije, el codigo para inhabilitar un boton (para que se ponga gris y no puedas darle click es el siguiente jButton1.setEnable(false); y el codigo para hacer invisible a un boton (para que no se pueda ver) es el siguiente: jButton1.setVisible(false);
Yo no puedo decirte donde debes colocar la instrucción porque es tu lógica, ¿tu sabes en que momento se va a bloquear el botón y en que momento se va a desbloquear (ya que no se si llmarlo inhabilitar o volverlo invisible le digo bloquear) me entiendes? No se si debo poner el código abajo de if(encuentra==false) o si lo debo poner abajo del try, es tu código, tu lógica, mi limite llega, en este caso, a decirte como son las 2 instrucciones, no se cual estarás pensando usar ya que bueno fuera que pudiera leer las mentes.
Debajo de
if(b.equals(rs.getString(2))&& p.equals(rs.getString(3)))
{
pero no logro ponerlo ya declare ya ventana del menu arriba
JFrmMdi m =new JFrmMdi();
Y al momento de bloque ar el jbuuton tengo que poner
m. noise que más poner
Pero ya te dije que cosa tienes que poner para deshabilitar o volver invisible al botón, o sea estas queriendo que sepa donde tu piensas que debe ir el "bloqueo" del botón, yo no lo se, o sea es como que yo te pida por favor que pongas dinero ahí, tu me vas a preguntar, ¿ahí dónde? Yo te vuelvo a decir que lo pongas ahiii, tu nunca vas a saber donde tienes que poner el dinero, estamos en el mismo caso, yo no se donde tu piensas poner el código, yo ya te facilite el código para deshabilitar y volver invisible a un botón, ya donde tu lo decidas poner...
No entiendo como es que no lo puedes poner, que pasa, ¿no puedes escribir? ¿Te sale una parte gris donde no puedes escribir?
No mira yo tengo una tabla con los nombres de los botones del menu que son boolean
Ahora con este código aparece bloqueado o habilitado
m.getJMenuBar().getMenu(0).getModel().setEnabled(rs.getBoolean(4));
Ahora al querer bloquer o ser invisible el botón si se cuales el código no lo poner como te dije ya declare el jframe que se va abrir con
JFrmMdi m =new JFrmMdi();
osea que al bloquer el jbutton como seria
m.//// no tengo referencia q poner
Disculpame waly pero realmente no te entiendo... mandame tu proyecto al mail para ver el código porque, ¿no lo tomes a mal ya?, pero no te explicas bien, tu sabes lo que estas diciendo porque tu tienes el problema y tu conoces el código, pero yo que estoy en otra parte del mundo no tengo la menor idea de que me estas diciendo jajaja
Pero sacando concordancia con ty código, has probado poner por ejemplo
m. GetJMenuBar(). GetMenu(4). GetItem(2). GetModel().SetDisabled(rs.getBoolean(21));?
¿Te funciona?
Si ese código que tu as puesto
m.getJMenuBar().getMenu(0).getModel().setEnabled(rs.getBoolean(4));
Con esto me bloque ao desbloquea el menu
Si me funciona normal si en la tablausuario compras es boolean y recibe 1 /0 si es 1 esta habilitado y si es 0 esta deshabilitado normal pero ahora como hago para bloquear un jbutton que se encuentra en jframe al iniciar sesión
Si tengo que poner primero
m. que más pongo
No tienes que poner nada más, porque lo que tu estas haciendo es para bloquear los menús, nunca en la vida vas a meter un botón dentro de un menu, ahí si estas totalmente equivocado, los menús son texto, los texto hacen alguna opción con alguna pantalla.
Los botones no se meten en los menús, los botones van en el formulario, nunca en un menu. La única forma de "bloquear" un botón es la que por tercera vez te voy a repetir.
Deshabilitar un botón (para que no se pueda dar click)
boton.setEnabled(false);
Hacer invisible a un boton (para que no se pueda ver)
boton.setVisible(false);
____________________
No confundas los conceptos wily, no esta de más leer un poco de teoría antes de ponerse a implementar código, te doy ese consejo, lee documentación sobre la herramienta que quieres hacer. En este caso sobre le barra de menu.
El jbutton esto dentro del jframe no en la barra de menu
Wily, trato de ser lo más amable posible contigo...
Si el botón no esta dentro de la barra de menu para que quieres poner
m. ¿Algo? Si m es la instancia del menu, como vas a referenciar al botón con la variablable de menu, ¿me dejo entender? Es como si me dices que quieres usar un JTable y me dices como le hago al JTable poniendo Frame. .. Nunca en la vida, son 2 instancias diferentes.
Tu me confundes poniendo m. Eso quiere decir que quieres referenciar al botón dentro del menu, COSA QUE ES IMPOSIBLE. Ahora, si tu botón esta dentro del JFrame, ya te repetí 3 veces anteriores los coditgos que debes poner, si ya te puse 3 veces el código que debes poner. Y te lo vuelvo a repetir una cuarta vez
Deshabilitar un botón (para que no se pueda dar click)
boton.setEnabled(false);
Hacer invisible a un boton (para que no se pueda ver)
boton.setVisible(false);
Wily, como te digo, estoy siendo lo más amable posible contigo, mi paciencia se esta acabando. Ya te di el código. Te lo estoy dando 4 veces, que pasa entonces, ¿me estas bromeando?
No m noes la instancia del menu es el jframe dentro de el esta la bara de menu no se si mejor ide ate mando el archivo a tu correo o no disculpa
Wil, ¿estas leyendo lo que te estoy poniendo?
¿Ya leiste como escodigo para inhabilitar au n boton? Sinceramente ya me estoy cansando de ti, ya bloquie a 2 personas antes por no leer lo que les digo y escribirme una respuesta totalmente diferente a la que les estoy dando.
Wily, no te lo voy a volver a decir otra vez, ya te puse ahi el codigo, LEELO POR EL AMOR DE DIOS !
Bueno si tienes razón ya me explicaste pero realmente creo que no te explique bien para dar con la solución por eso me refería a mandarte el proyecto a tu correo no es mi intención molestar disculpa gracias
No wily, ya te di el código, no voy a estar solucionando todos tus errores de código, esta bien que esta página sea para ayudar, pero no abuses, todo quieres mandármelo a mi mail para que te lo corrija.
Ya te di el código, ¿quieres qué te lo vuelva a repetir otra vez?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas