Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-10-2007
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Poder: 25
José Luis Garcí Va camino a la fama
Garcias por tu pronta respuesta Lepe, pero me pregunto, seria posible modificar el archivo pas, añadir las propiedades en menu pas. pero es que me parce muy complejo, y me da pena desechar la idea ya que me parece la forma mas adecuada de implementar niveles de usuario en un programa, tal vez se me ocurre seria más facil en un ActionList?.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #2  
Antiguo 18-10-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Lo de modificar los fuentes de Delphi no lo veo viable.

1 - No sé si será legal eso de modificar el menu.pas.
2 - No aseguras compatibilidad con programas que ya funcionen.

Lo que se me ocurre es crearte tu nueva unidad PrivMenu.pas pegando todo el contenido de la unidad de delphi (repito, no sé si legalmente puedes hacer eso), renombrando las clases a TPrivMenu, TPrivMenuItem, etc.

A partir de aquí ya eres "libre" . Después podrás instalar el componente como uno más de delphi.

Con un TActionList, no tendrías que reinventar nada. Cada TAction tiene su propiedad Tag y ahí puedes guardar el nivel de privilegios que haría falta para mostrar ese TAction, Con un simple bucle puedes recorrer todos los TActions inhabilitándolos, hacerlos invisible, etc.
Código Delphi [-]
  for i:= 0 to actionlist1.count -1 do
  actionlist1.Actions[i].Visible := actionlist1[i].tag <= PrivilegioDelUsuario

Si en cada ventana existen controles que puedan ser invisibles para ciertos usuarios, yo añadiría herencia visual, es decir crear un formulario en blanco que contenga un ActionList y una propiedad Privilegio:integer, Al asignar el Privilegio haría lo propio con los Actions que haya en la ventana.

Habrá otras muchas formas de implementar privilegios, pero dependerá de tus necesidades.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 18-10-2007
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Poder: 25
José Luis Garcí Va camino a la fama
Visto lo dicho, nada, abandono la idea y me da pena, pasare a empezar con otro componente, espero no me de nuevos problemas, ya que últimamente estoy bloqueado con varias cosas a la vez y conociendome, o aparco hasta que se me haga la luz o me veo trabajando hasta las 3- 4 de la mañana y a mi mujmer e hijas enfadadas por no prestarles un poco de atención.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Habiliar item de un TmainMenu egarc Conexión con bases de datos 1 28-07-2007 17:16:21
Ejemplos de TMainMenu con Iconos Marian0 C++ Builder 2 16-02-2007 17:15:06
Acceso a las propiedades de un objeto desde el editor de propiedades Hugo OOP 0 24-11-2006 12:58:22
!TmainMenu Desplegado Carlosguiland OOP 1 09-11-2004 19:28:11
Crear nuevas propiedades de un formulario Angel OOP 15 10-07-2003 15:39:42


La franja horaria es GMT +2. Ahora son las 15:02:33.


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