Visual Basic - Visible

Life is soft - evento anual de software empresarial
 
Vista:

Visible

Publicado por Conchi (3 intervenciones) el 21/07/2003 23:46:22
Hola de nuevo,
Lo que estoy tratando de hacer para mi proyecto, es que cuando un usuario se conecte al sistema, se verifique los menues a los que tiene acceso y los que "no" los ponga invisibles.
Tengo una tabla en donde guardo los nombres de los menues, ya tengo creado mi formulario para crear usuarios en donde selecciono los menues que puede ver, hasta alli todo bien.
El problema surge cuando tengo que poner invisibles todas las opciones de un menu, por ejemplo, en un menu inventario tengo:
lineas
categorias
subcategorias
productos
Esas 4 opciones las tengo que poner invisibles ya que el usuario no tiene acceso a ninguna. La idea es que si pasa esto, se ponga invisible el menu "inventario".
No tengo problema si lo pongo enabled=false, pero estoy empeñada en que no se vean las opciones.
Si alguien me quiere ayudar, pero no me explico bien, por favor no duden en decirmelo...

Nota: puedo tener tambien un submenu dentro de otro submenu como en word "Herramientas" "Idiomas".

Gracias
Salu2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Visible

Publicado por Jim Adam (120 intervenciones) el 22/07/2003 17:45:55
' Yo lo he usado mucho inclusive para configurar el idioma aunque otros recomiendan usar el Archivo de Recursos
En tu tabla debes tener una relacion muchos a muchos:

CodigoUsuario|NombreMenu|EstadoMenu|TituloMenu|CodigoIdioma

usuario
dim crl as control
for each crl in FormularioMDI.controls
if typeof crl is menu then
rsmenu.open "select estado from Menus where codigousuario=" & variable_con_el_codigo & " AND nombremenu='" & crl.name & "'",Conexion,3,1,1
if Not rsMenu.EOF Then
select case rsMenu(0)
Case 0
crl.visible=false
crl.enabled=true
Case 1
crl.visible=true
crl.enabled=false
Case 2
crl.visible=false
crl.enabled=false
End Slect
else
'si no lo has registrado lo dejas tal como está al momento del diseño
End If
' Te preguntarás porque quiero que esté oculto y activado si cuando está oculto igual no voy a poder hacer click sobre él !!!
' Yo en mucho programas acostumbro tener Acceso a un formulario desde otro, cuando necesito a alguien y no lo encuentro llamo al formulario de mantenimeinto pero desde el menú no puedo tener acceso Visible=False pero si Enabled = True El botón de llamar al antenimiento si lo hará o por lo menos el usuario sabrá que hay esa posibilidad pero que no tiene permiso.
next
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Visible

Publicado por Conchi (15 intervenciones) el 23/07/2003 19:00:11
Que tal Jim,

Probe lo que me dijiste, pero no funciona bien, ya que cuando tengo por ejemplo 3 opciones en mi menú y ese usuario no tiene acceso a ninguna de las 3 me da error... error porque debe quedar por lo menos una opcion visible

Gracias
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar