FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Trabajando con formularios
!Hola a todos...! Tratare de explicar que es lo que quiero hacer, cualquier comentario se los agradecere.
En un formulario tengo un botón para cada opción... BtUsuario, BtTrabajador, BtRespaldo etc... entonces si quiero realizar una operacion solo utilizo el nombre del botón eliminando la parte de Bt y así se a que tabla voy hacer referencia... Hasta aquí todo funciona perfecto, me muestra la información correcta y elimina los registros que deben ser.. Lo que quiero hacer es que al pulsar en un botón llamado BtNuevo me lleve a un formulario (este sera según lo que tenga seleccionado), por decir si tengo activado la parte de usuarios debe mandarme al Formulario con el nombre de FmUsuarios y si estuviera seleccionado la parte de trabajador debe mandar al Formulario de FmTrabajador... Todos los formularios que pretendo utilizar quedan agregados en el Uses de la forma. Esto intento hacerlo de la siguiente manera... procedure TFmABC.BtNuevoClick(Sender: TObject); begin TForm('Fm' + LbLetrero.Caption).Show; end; El error que marca es de tipo Access violation, pero no tengo idea de como solucionarlo. Bueno se que podria utilizar condiciones de que si el LbLetrero es igual a X pues me mande al FmX.Show, pero es justo lo que trato de evitar... Espero que me haya explicado, de antemano gracias... |
#2
|
||||
|
||||
Se trata de buscar el formulario a partir de su nombre, y si lo encuentras visualizarlo.
Se me ocurre que se puede hacer a partir de TApplication:
O a partir de la clase TScreen:
Es eso?
__________________
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. |
#3
|
|||
|
|||
Hola,
echale un vistazo a la funcion FindComponent saludos vaya, se me adelanto Neftali |
#4
|
|||
|
|||
Listo.!!
Gracias Neftali y Coso...!!
Gracias a sus aportaciones pude resolverlo y el resultado fue el siguiente: procedure TFmABC.BtNuevoClick(Sender: TObject); begin With TForm(Application.FindComponent('Fm' + LbLetrero.Caption)) do Show; end; |
#5
|
||||
|
||||
Yo pondría alguna comprobación....
Si por alguna razón el form no se encuentra, tu aplicación va a hacer unos "fuegos artificiales" dignos de ver...
__________________
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. |
#6
|
|||
|
|||
Tienes razón Neftalí... Hasta ahora no me ha marcado ningún error, pero es factible a que suceda; agregare alguna comprobación.
¡Gracias.! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Trabajando Con Interbase | MARIA ROSA | Firebird e Interbase | 4 | 02-10-2007 17:03:59 |
Trabajando con ClientDataSet | gsilvei | Conexión con bases de datos | 3 | 20-09-2007 20:35:39 |
trabajando en red | jdg | C++ Builder | 2 | 18-02-2007 16:10:48 |
Trabajando con TADODataset | Novato | Conexión con bases de datos | 2 | 08-10-2005 23:57:27 |
Trabajando con DLL | b3nshi | Varios | 1 | 16-03-2005 18:21:55 |
|