![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
Hola,
no estoy seguro de que se pueda hacer eso de la manera que lo pides ni con Delphi2005 ni con ninguna otra versión. Pero lo que si puedes hacer es lo siguiente: - Los formularios de Delphi tienen una propiedad llamada Components. Que es una matriz con todos los componentes que hay en ese formulario. - Tambien tienes una función llamada FindComponent que te permite buscar un componente en concreto en el formulario - Por último puedes preguntar a un elemento de la lista de Components si ese objeto pertenece a una clase en concreto y si es así, puedes modificar sus propiedades. Para muestra un botón: La siguiente función recorre todos los componentes y para unas determinadas clases de objetos vacia su contenido (sean texto, labels, combos, etc.)
Esta función afecta a todos los componentes del formulario que sean de estas clases. Si sólo quieres que afecte a los edits del formulario y además a sólo algunos de ellos, puedes usar la función FindComponent. Otro ejemplo: en el formulario debe haber 7 checkbox como mínimo y deben tener la nomenclatura igual: MiCheck1, MiCheck2, ... La función busca esos checkbox y los marca.
Bueno después de todo este rollo, espero que te pueda servir algo. Y si me he equivocado en algo, que me corrijan, y si alguien tiene alguna idea mejor... Saludos |
|
#2
|
||||
|
||||
|
Cita:
Saludos |
|
#3
|
|||
|
|||
|
Cita:
La idea del grupo es para, dentro de un mismo panel, poder tener distintas disposiciones manteniendo componentes sin mover, estando estos entrelazados (si pusiera un panel, los componentes fijos saldrían cortados), de forma que pueda dar una orden a todo ese grupo sin tocar el resto de los componentes que puedan estar "físicamente" entre ellos. No sé si me doy a entender bien. |
|
#4
|
||||
|
||||
|
Cita:
Así puedes tener dentre de un panel principal, varios paneles. En los cuales a uno le pones unos componentes que no quieres que se toquen y otros que lo puedes ocultar, deshabilitar, etc en otro panel. Para ello debes modificar las siguientes propiedades: - BevelInner = bvNone - BevelOuter = bvNone - BorderWidth = 0 Así el panel no se notará nada. Creo que es lo que buscas (si lo he entendido bien) Saludos |
|
#5
|
|||
|
|||
|
Cita:
Código PHP:
Lo que busco es poder dar una orden directa a 1 y a 3 para que se oculten (con solo 2 componentes no me importaría dar la orden uno por uno, pero cuando se juntan en mayor número toca un poco más las narices). Última edición por david.rguez fecha: 08-06-2007 a las 13:55:16. |
|
#6
|
||||
|
||||
|
Cita:
Ves jugando con los panels. No hay necesidad de cortar objetos. Saludos |
|
#7
|
|||
|
|||
|
Cita:
Y no puedo sacar el 2 de ahí porque esa es la disposición que necesito (bueno, este es solo un ejemplo, pero en nuestro programa son más componentes los que se entremezclan componiendo la ventana). Última edición por david.rguez fecha: 08-06-2007 a las 14:28:52. |
|
#8
|
||||
|
||||
|
¿Y por qué no creas una clase? Por ejemplo (así, a lo burro):
Posiblemente esto no funcione y que haya una estructura mejor que el ARRAY para almacenar referencias a componentes, pero creo que entiende la idea. [edit] Bicho tiene razón: si quitas los bordes a un panel y le pones el mismo color que el fondo de la aplicación se vuelve invisible.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi! - BAScript - Multi Language Scriptable Development Environment Última edición por Ñuño Martínez fecha: 08-06-2007 a las 13:47:02. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Agrupar archivos... | craven | Varios | 3 | 01-11-2006 21:58:20 |
| agrupar de a 1 y varios | raudelink | SQL | 3 | 16-11-2004 00:58:11 |
| Agrupar en QuickReport | anitra_cattivo | Impresión | 6 | 26-08-2003 02:13:42 |
| Agrupar ? | ramiretor | Impresión | 1 | 16-05-2003 01:51:32 |
| Agrupar información | nfernandez | Impresión | 1 | 08-05-2003 20:19:00 |
|