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 15-10-2007
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 21
Chris Va por buen camino
Lo que tedrás que hacer es derivar (hacer un decendiente) del TMenuItem, solo de esta forma podrás agregar las propiedades que necesites. Si no me equivoco, también tendras que hacer un decendiente de TMenu y TMainMenu y si lo necesitas de TPopupMenu, lo único que tendrías que cambiar es que en vez de utilizar TMenuItem utilize tu propia clase, p. ej. TmiMenuItem, TmiMenu, ....
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #2  
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
D&W He probado y nada, de echo desde el principio parte de un componente TMAinmenun, a la que quiero añadir las nuevas propiedades y no hay manera, si a alguien se le ocurre otra cosa, seguire, de todas maneras sigo investigando, y he visto por ahí, que los componantes que hayh no tienen propiedades nuevas, en la parte de los item, no creo que el problema sea el no poder, mas bien pienso que debe ser bastante complicado.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
  #3  
Antiguo 17-10-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
He dado una visual muy por encima al menu.pas y el problema que veo está en el diseño de las clases.

Mira el componente TComboBoxEx (ComCtrls.pas) verás que tiene 2 propiedades: Items e ItemsEx, quizás puedas hacer algo parecido. Si no te apetece, creo que tendrías que empezar de cero el componente.

La clase TMenu ya publica la propiedad Items, de solo lectura y además accediendo directamente a su propiedad privada FItems:
Código Delphi [-]
  published
    property Items: TMenuItem read FItems;

Quizás los de Borland no quisieran que se derivase de ese componente, de ahí su implementación.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
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
  #5  
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
  #6  
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 21:47:16.


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