Una de las cosas que nunca he logrador hacer en los menus, es deshabilitar y habilitar opciones a menus, como por ejemplo , si quiero generar indices al entrar a la opcion de menu de generar indices, que me deshabilite me deshabilite el resto de las opciones de menu para evitar errores a la hora de generar indices.
Ahora con ese nuevo proyecto que lo tengo rezagado por falta de tiempo que logre entrar de acceso al menu,gracias a los Ing. Cristobal Navarro,Jose Luis y Francisco Alegria,salio perfecto.
Pero ahora quiero accesar a la opcion de menu que dice altas+empresas,como puedo deshabilitar las opciones de menu:
Avisos, Reportes, Utilerias, Configuracion, sin antes no he seleccionado la empresa; el unico que debe quedar habilitada es Altas y mas Empresas y estar deshabilitada Cerrar empresas e Incidencias.
Ya una vez que elija abrir la empresa, ahora si que me quede habilitada algunas opciones de menus, asi como cerrar empresas
No tengo problemas en mostrar en un txbrowse la lista de empresas a seleccionar, es lo de menos, lo unico que quiero es deshabilitar las opciones que mencione!
Pongo la imagen, y me entiendan lo que quiero hacer:
<a href='http://www.subirimagenes.com/otros-deshabilitar-9568593.html'><img src='http://s2.subirimagenes.com/otros/previo/thump_9568593deshabilitar.jpg' alt='subir imagenes' border='0'></a>
Y codigo del menu....
- Code: Select all Expand view
- DEFINE WINDOW oWnd MENU DespMenu() ICON oICON Title "Control de obligaciones de SAT" MenuInfo 1 MDI COLOR nClr,nClr
SET FONT OF oWnd TO oFont1
SET MESSAGE OF oWnd TO "Selección de empresa..." CENTER
DEFINE BUTTONBAR oBar 3DLOOK BUTTONSIZE 26,26 OF oWnd
oWnd:bPainted := { | hDC | BmpTiled( hDC, oWnd, oBmp ) }
*oWnd:oMsgBar:nClrPane := nRgb(0,0,200)
*oWnd:oMsgBar:nClrText := nRgb(0,0,200)
oWnd:oMsgBar:KeybOn()
oWnd:oMsgBar:DateOn()
ACTIVATE WINDOW oWnd MAXIMIZED // ON INIT Sel_Acceso(oWnd)
DbCloseAll()
- Code: Select all Expand view
- // --- Despliegue de Menús
//------------------------------------------------------------------------------\\
STATIC FUNCTION DespMenu()
LOCAL oMenu
MENU oMenu
IF aMod[1] .AND. aPer[1]
MENUITEM "&Altas"
MENU
MENUITEM oItem[01] PROMPT "Empresas" Action AltasSAT() ;
MESSAGE "Abrir Empresas"
MENUITEM oItem[02] PROMPT "Cerrar empresa" Action Calcula();
MESSAGE "Cerrar empresa"
MENUITEM oItem[03] PROMPT "Incidencias" Action EnProceso()
*MESSAGE "Altas de incidencias"
SEPARATOR
MENUITEM oItem[04] Prompt "&Salir";
ACTION IF( MsgYesNo("Desea salir del programa?"),oWnd:End(),);
MESSAGE "Finalizar el programa"
ENDMENU
ENDIF
IF aMod[2] .AND. aPer[2]
MENUITEM "&Avisos"
MENU
MENUITEM oItem[05] PROMPT "Avisos" Action EnProceso();
MESSAGE "Avisos y seleccion de imagen"
ENDMENU
ENDIF
IF aMod[3] .AND. aPer[3]
MENUITEM "&Reportes"
MENU
MENUITEM oItem[06] PROMPT "Reporte Asistencias" Action EnProceso()
MENUITEM oItem[07] PROMPT "Impr. de Credenciales" Action EnProceso() // Action EnProceso()
*MENUITEM oItem[16] PROMPT "Ventas" Action RVENTA()
*MENUITEM oItem[17] PROMPT "Compras" Action RCOMPRAS()
*MENUITEM oItem[18] PROMPT "Clasif. de grupos" Action EnProceso()
*MENUITEM oItem[19] PROMPT "Inventario" Action RINVENTARI()
*MENUITEM oItem[20] PROMPT "Inventario físico" Action EnProceso()
ENDMENU
ENDIF
IF aMod[5] .AND. aPer[5]
MENUITEM "&Utilerías"
MENU
*MENUITEM oItem[21] PROMPT "Indexar archivos" Action Indexa()
ENDMENU
ENDIF
IF aMod[6] .AND. aPer[6]
MENUITEM "&Configuración"
MENU
MENUITEM oItem[26] PROMPT "Perfíl de Usuarios" Action EnProceso("PERFUSUA()",oItem[26], oItem[26]);
Message "Alta de Usuarios"
ENDMENU
ENDIF
ENDMENU
RETURN (oMenu)
Alguien que me pueda ayudar con ese codigo habilitar y deshabilitar opciones de menu...
Gracias ,esperando contar con su apoyo de siempre de todos ustedes Ingenieros.
Atte: Adrian C. C.