FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Listar forms de la aplicación
Hola.
Como podría listar o saber en tiempo de ejecución los forms que tiene el programa? La idea sería listarlos y guardarlos en una tabla. Es para un control de permisos en el cual el administrador del programa le daría los permisos necesarios a cada form. Utilizo D2007 y firebird 2.5. Un saludo y gracias. |
#2
|
|||
|
|||
Si mal no recuerdo en el objeto screen vienen los forms, pero los que usan el createform, si se crean forms al vuelo, no creo que aparezcan a menos que estén creados en ese momento, algo que se me ocurre seria ver los recursos del ejecutable, como ahí se guardan los DFM, entonces podrías obtener todos...
|
#3
|
||||
|
||||
Hola,
Creo, con el compañero, que la variable "Screen" contiene los formularios "creados". Igual si los formularios se crean con el objeto "Application" como "Owner", digo, igual aparecen también en la variable "Screen". Sin embargo, me suena raro usar los formularios para asignar permisos a los diferentes usuarios. Quiero decir que igual hay otras formas más sencillas, más establecidas y estándar. A ver si algún otro compañero puede darte alguna pista. |
#4
|
||||
|
||||
Gracias por responder.
Efectivamente, solo salen los formularios que están en auto-create. Los demás formularios no salen. Lo de los permisos, es porque este cliente es muy especial. Tengo los componentes Tms-Security y para este caso no me valen. En fin... los introduciré uno a uno en la tabla. Un saludo. |
#5
|
||||
|
||||
Hola Luis.
Las primer idea que se me cruzó es ir registrando en una lista los forms en la creación, lo cuál se puede hacer usando TObjectList y unificando la creación en un proceso por ejemplo. Luego mirando por alguna otra opción encontré esto, mucho mas elaborado, que tal vez te pueda servir: Create and Manage dynamic Forms at Runtime using Class References. Con Delphi 2010 o +, pareciera que ya existe una opcion con RTTI, como comentan en el mensaje 6 de este hilo: Dynamically list all forms in a project (imposible para mi Delphi 7 ) Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#6
|
||||
|
||||
Hola Luis.
ecfisa te ha dado muy buen información. Yo sólo añadiría esta referencia a un caso similar: http://www.clubdelphi.com/foros/showthread.php?t=20261 Ocurrió hace nueve años. Ahora lo matizaría, pero creo que en esencia es una solución factible con tu versión de Delphi. Un saludo. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Aplicacion sin forms | billy_hates | Varios | 11 | 14-04-2010 13:56:20 |
Listar todos los nombres de los Formularios de mi aplicacion | gabriel_exe | Varios | 10 | 08-04-2009 18:10:48 |
Errror al Cerrar Aplicacion con Dll Forms | look | Varios | 1 | 13-03-2009 22:23:30 |
Acceder a los forms abiertos de tu aplicacion | Neftali [Germán.Estévez] | Trucos | 0 | 07-06-2006 09:55:15 |
Listar Forms Hijos | cso2000 | Varios | 2 | 20-05-2003 21:11:13 |
|