![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Cita:
![]()
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
|
#2
|
||||
|
||||
|
Hola,
Bueno, pues, en efecto, nuestro amigo Jhonny iba bien encaminado. Parece claro que no pueden ocultarse botones de un "TCategoryButtons", pero, el control se comporta muy bien a la hora de crear las categorías y botones en tiempo de ejecución, de hecho parece preparado para algo así, de manera que resulta más o menos sencillo realizar el filtrado, una vez que podemos crear los elementos en tiempo de ejecución, basta con buscar por la cadena de búsqueda en el caption de un botón... antes de crearlo y añadirlo al control. El quid está por tanto en tener una fuente desde la que que crear dichos elementos, por ejemplo, en mi caso se trata de sendos arrays estáticos, donde defino todas las acciones y todos los controles disponibles (véase la imagen de abajo) así como algunas de sus características, entre ellas su nombre, que es lo que me sirve a la hora de buscar o filtrar una determinada acción o control. En fin, que es posible hacer lo que me preguntaba al principio, siempre que no creemos las categorías y botones en tiempo de diseño, en todo caso, pudiendo recrearlos en tiempo de ejecución. ![]() Tal vez incluso podríamos ir un poco más allá. Por ejemplo, yo creo que el propio Delphi utiliza este control (u otro similar) para su paleta de componentes, por ejemplo. Ahora bien, Delphi nos muestra "en negrita" el texto que estamos buscando o el filtro que estamos usando. Yo creo que esto podría hacerse utilizando algún evento "Draw" del "TCategoryButtons". Otra cosa que tengo que decir es que yo estoy filtrando sobre unos 100 elementos más o menos: no sé cómo se comportará con muchos más, pero, no pinta del todo mal. |
|
#3
|
||||
|
||||
|
Diría que sí es ese mismo componente. Y se ve que va agil.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#4
|
||||
|
||||
|
Hola Casimiro,
Sí que se parecen ambos componentes, sí. De hecho se me olvidó comentar que las categorías de este componente cuentan con los métodos "BeginUpdate" y "EndUpdate", lo que evita "parpadeos". Lo cierto es que parece que el componente está hecho para algo así: no tanto para añadir categorías y botones en tiempo de diseño (que también), como para trabajar con ellos en tiempo de ejecución. De hecho en mi caso esto es hasta una ganancia extra: puesto que ya no tendré que ir añadiendo botones en tiempo de diseño, sino que al añadir acciones al "mapa de acciones", el componente mostrará las nuevas acciones sin más. Una ganancia colateral para variar. ![]() |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| TCategoryButtons | scriptors | Varios | 5 | 15-03-2015 15:28:26 |
| Ocultar botones distintos form | The Cid James | Varios | 13 | 01-08-2013 19:06:37 |
| componente para botones | El_Chava | Varios | 8 | 29-09-2005 16:35:00 |
| Problema con Componente derivado de TPanel y Botones | Critter | Varios | 4 | 05-09-2004 11:08:55 |
| Crear un Componente TScrollbox con botones dentro | CORBATIN | OOP | 15 | 06-05-2004 22:48:37 |
|