Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-02-2014
Avatar de Jere_84
Jere_84 Jere_84 is offline
Miembro
NULL
 
Registrado: sep 2011
Ubicación: Córdoba, Argentina
Posts: 214
Poder: 0
Jere_84 cantidad desconocida en este momento
Necesito Deshabilitar acciones en TActionManager

Buenas tardes!, Estoy utilizando la cinta de opciones TRibbon que se utiliza conjuntamente con el componente TActionManager este ultimo tiene todas las acciones que están en la cinta TRibbon. Lo que necesito hacer es para ciertos usuarios deshabilitar algunas acciones del TActionManager.

Logre ocultarlas:
Código Delphi [-]
for i := 0 to ActionManager1.ActionBars.Count -1 do
    for j := 0 to ActionManager1.ActionBars[i].Items.Count -1  do
      if ActionManager1.ActionBars[i].Items[j].tag = 0 then
        ActionManager1.ActionBars[i].Items[j].Visible := False;

Pero necesito deshabilitarlas, algo así debería ser pero no funciona:
Código Delphi [-]
for i := 0 to ActionManager1.ActionCount - 1 do
       if ActionManager1.Actions[i] is TAction then
         (ActionManager1.Actions[i] as TAction).Enabled := False;

En el TActionManager al ver la lista de acciones esta la propiedad Enabled pero esto en diseño, en ejecución no puedo encontrar el camino a esta propiedad.

Bueno si alguien me puede ayudar será bienvenido!

Saludos cordiales.
Responder Con Cita
  #2  
Antiguo 14-02-2014
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Algo debes estar haciendo mal.
A mi esto me funciona perfectamente:

Código Delphi [-]
  for i := 0 to ActionManager1.ActionCount - 1 do begin
    TAction(ActionManager1.Actions[i]).Enabled := False;
  end;

Las deshabilita todas.

Añado: Si quieres realizar la comprobación e incluir algunas Standard Actions, haz el CAST como TCustomAction.

Código Delphi [-]
  for i := 0 to ActionManager1.ActionCount - 1 do begin
    if (ActionManager1.Actions[i] is TCustomAction) then begin
      TCustomAction(ActionManager1.Actions[i]).Enabled := False;
    end;
  end;
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 14-02-2014 a las 16:54:26.
Responder Con Cita
  #3  
Antiguo 14-02-2014
Avatar de Jere_84
Jere_84 Jere_84 is offline
Miembro
NULL
 
Registrado: sep 2011
Ubicación: Córdoba, Argentina
Posts: 214
Poder: 0
Jere_84 cantidad desconocida en este momento
Hola Neftali!, si funciona muchas gracias... no se porque estaba haciendo la prueba con acciones estándar y estas no se bloqueaban.

Una pregunta ¿Consideras que trabajando con la propiedad Enabled y la propiedad Tag puede ser útil para el bloqueo a usuarios?

Estuve viendo que los TActionClients tienen una propiedad llamada "Accesible" pero no hay documentación alguna en la ayuda de Delphi XE2, ni tampoco en la web, ¿tenes idea si se utiliza para accesos y bloqueos a usuarios?

Saludos cordiales.
Responder Con Cita
  #4  
Antiguo 17-02-2014
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Las pocas veces que he usado algo similar lo he hecho con las propiedades Enabled y Visible.
Yo tampoco he usado esta propiedad.

Habrá que investigarla... ;-)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cargar TActionManager desde TreeView Neeruu Varios 5 04-03-2010 17:47:58
Separador de Menu con TActionManager lightningdd Gráficos 2 22-02-2008 20:03:24
TActionManager jplj Varios 0 09-11-2004 21:42:17
Problema con TActionManager Pakelo OOP 2 17-08-2004 18:45:55
Necesito deshabilitar el mensaje: "At least one service or driver failed during..." sarackganda Windows 0 15-04-2004 04:40:35


La franja horaria es GMT +2. Ahora son las 22:19:57.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi