Buenas tardes compa帽eros del foro, en la ventana principal de mi aplicaci贸n tengo una barra Quickaccess, esta barra se forma de manera din谩mica a partir de una tabla de una base de datos que almacena las opciones que cada usuario ha agregado a dicha barra.
Ahora necesito que el usuario sea capaz de eliminar algunas opciones que est谩n en esa barra y al mismo tiempo se eliminen de la base de datos para que en el siguiente inicio de sesi贸n ya no aparezca la opci贸n que fue eliminada.
Al darle click derecho a una de los iconos lo puedo eliminar de la misma, pero mi pregunta es, como puedo guardar en una variable el prompt o el Tooltip del bot贸n pulsado, para que con ese dato pueda eliminar el registro correspondiente en la tabla de opciones del usuario.
Adicionalmente, me gustar铆a saber como puedo insertar una nueva opci贸n el la barra Quickaccess, como lo hago ahora es, darle click derecho del mouse a una opci贸n del Ribbonbar, al usuario le aparece una ventana donde le pide confirmaci贸n para agregar esta opci贸n a la barra, en caso afirmativo se guarda esa opci贸n en la tabla antes mencionada y se agrega a la barra Quickaccess, pero siempre la agrega al final.
Como puedo destruir la barra Quickaccess y regenerarla agregando el bot贸n que se acaba de agregar, ya que como caracter铆stica especial los 煤ltimos 6 铆conos no dependen del usuario, ya que son comunes para todos ellos, por lo que el nuevo 铆cono deber铆a insertarse antes de un icono especifico.
Espero que este c贸digo sirva para darles una mejor idea de como lo manejo:
Mi ambiente FWH 19.12, Harbour 3.2, Borland 7.7
OWNER聽 FUNCION聽 聽 聽 聽PROMPT聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽BITMAP聽 聽 聽 聽 聽 聽 聽 聽 聽 FECHA聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽TOOLTIP
AGB 聽 聽 creamade() 聽 聽 聽Procesar desc. 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 descproc 聽 聽 聽 聽 聽 聽聽 聽 2020-02-05 00:00:00聽 Procesar solicitud de descuento 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽
AGB 聽 聽 segcliegp() 聽 聽聽 聽Seguimiento a alta 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽SEGUICLIENTE 聽 聽 聽 聽聽2020-02-05 00:00:00聽 Seguimiento a alta de cliente 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽
AGC 聽 聽 soli_panta() 聽 聽 Solicitar conf. deposito 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽solipanta 聽 聽 聽 聽 聽 聽 聽 聽2019-04-24 00:00:00聽 Solicitar confirmaci贸n de deposito 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽
AGC 聽 聽 diario_inci() 聽聽 聽Registro diario de incidencias 聽 聽 聽 聽 聽incinomi_regis 聽 聽 聽聽 聽2019-04-24 00:00:00聽 Registro diario de incidenciasAhora necesito que el usuario sea capaz de eliminar algunas opciones que est谩n en esa barra y al mismo tiempo se eliminen de la base de datos para que en el siguiente inicio de sesi贸n ya no aparezca la opci贸n que fue eliminada.
Al darle click derecho a una de los iconos lo puedo eliminar de la misma, pero mi pregunta es, como puedo guardar en una variable el prompt o el Tooltip del bot贸n pulsado, para que con ese dato pueda eliminar el registro correspondiente en la tabla de opciones del usuario.
Adicionalmente, me gustar铆a saber como puedo insertar una nueva opci贸n el la barra Quickaccess, como lo hago ahora es, darle click derecho del mouse a una opci贸n del Ribbonbar, al usuario le aparece una ventana donde le pide confirmaci贸n para agregar esta opci贸n a la barra, en caso afirmativo se guarda esa opci贸n en la tabla antes mencionada y se agrega a la barra Quickaccess, pero siempre la agrega al final.
Como puedo destruir la barra Quickaccess y regenerarla agregando el bot贸n que se acaba de agregar, ya que como caracter铆stica especial los 煤ltimos 6 铆conos no dependen del usuario, ya que son comunes para todos ellos, por lo que el nuevo 铆cono deber铆a insertarse antes de un icono especifico.
Espero que este c贸digo sirva para darles una mejor idea de como lo manejo:
cCadsql1:="select funcion,prompt,bitmap,tooltip from menu_options where owner='&firma' order by prompt"
oRs1 := TOleAuto():New( "ADODB.Recordset" )
oRs1:CursorType := 1 // opendkeyset
oRs1:CursorLocation := 3 // local cache
oRs1:LockType := 3 // lockoportunistic
TRY
cursorwait()
oRS1:Open( cCadSql1,'Provider='+xPROVIDER+';Data Source='+xSOURCE+';Initial Catalog='+xCATALOGA+';User Id='+xUSERID+';Password='+xPASSWORD )
聽 聽 聽 聽 聽 聽
CATCH oErr
MsgInfo( "Error al consultar items para men煤 QuickAccess d铆namico ")
RETURN(.F.)
END TRY
oRs1nr:=oRs1:RecordCount()
if oRs1nr>0
oRs1:MoveFirst()
for unreg:=1 to oRs1nr
cButt_tt:="oBtnqa"+alltrim(Str(unreg))
cFunc:=oRs1:Fields(0):Value()
cProm:=alltrim(oRs1:Fields(3):Value())
cBitm:=oRs1:Fields(2):Value()
add button &cButt_tt QUICKACCESS oQuicka bitmap cBitm action &cFunc
&cButt_tt:cTooltip := cProm
oRs1:MoveNext()
next
endif
add button oBtnenv QUICKACCESS oQuicka bitmap "cambiatema" action GradDlgs0()
oBtnenv:cTooltip:="Cambiar ambiente del sistema"
add button oBtnlib QUICKACCESS oQuicka bitmap "library" action library_view()
oBtnlib:cTooltip:="Biblioteca de recursos (manuales, gu铆as, imagenes,etc)"
add button oBtnupd QUICKACCESS oQuicka bitmap "UPDATE" action updatever()
oBtnupd:cTooltip:="Actualizar versi贸n manualmente"
add button oBtndirt QUICKACCESS oQuicka bitmap "DIRECTORIO" action directorio()
oBtndirt:cTooltip:="Ver el directorio telef贸nico"
add button oBtnace QUICKACCESS oQuicka bitmap "MEXICO" action acerca()
oBtnace:cTooltip:="Acerca del sistema"
add button oBtnexit QUICKACCESS oQuicka bitmap "exit" action salsys(oVentprinc)// tooltip "Finalizar y salir del sistema"
oBtnexit:CTooltip := "Finalizar y salir del sistema"Mi ambiente FWH 19.12, Harbour 3.2, Borland 7.7