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
|
|||
|
|||
uso de tAniIndicator - animación "Cargando..."
Buenos días,
Estoy intentando que al activar un nuevo form en que se accede a un registro en particular o cuando se realiza una consulta a un clientdataset, se muestre un mensaje de "Cargando datos", junto con un objeto tAniIndicator que muestre un cursor rotando de espera. Lo he probado poniendo el objeto AniIndicator dentro de un tRectangle y también en un tPanel y en los dos casos el objeto AniIndicator aparece estático. Código:
procedure TForm1.ShowLoading; begin Panel2.Position.X := (FormFactor.Width - panel2.Width) / 2; panel2.Position.Y := (FormFactor.Height - panel2.Height) / 2; panel2.Visible := True; panel2.BringToFront; Application.ProcessMessages; end; Por otro lado, tampoco veo la forma de cambiar el estilo y color del objeto tAniIndicator. Gracias por cualquier ayuda o sugerencia. Saludos |
#2
|
||||
|
||||
Pegale una ojeada al demo del TActivityIndicator
|
#3
|
||||
|
||||
Estas de buenas, me quedo compilado el demo en cuestion
Revisa la propiedad Animate (Boolean). Cuando esta a True, anima Para el estilo tenes 3 variantes, controladas por la propeidad IndicatorType Color solamente dispones entre blanco o negro, revisa la propiedad IndicatorColor Tambien podes modificar el tamaño, usando la propiedad IndicatorSize Lee tambien la documentacion Por otro lado yo siempre recomiendo no usar el Application.ProcessMessages, y mejor utilizar Threads para ejecutar trabajo pesado y que el MainThread siga controlando la UI Tene en cuenta que la animacion del TActivityIndicator ocurre en el MainThread.
En ese codigo, al ejecutarse la llamada a Sleep, o bien cuando llamas a un proceso que tarda, el MainThread se congela y asi mismo la animacion, parece que quedo "tildado" La solucion es ejecutar el trabajo pesado en un thread. Hay un monton de ejemplos por el foro, solo queria puntualizarlo Última edición por AgustinOrtu fecha: 15-11-2015 a las 16:04:10. |
#4
|
|||
|
|||
Gracias, pero creo que todo lo que comentas hace referencia a un objeto distinto.
La aplicación que estoy creando es para Android, utilizando FMX, por eso lo publiqué en este foro. El código y propiedades a las que haces referencia, si no me equivoco son del siguiente componente VCL. Vcl.WinXCtrls.TActivityIndicator Yo estoy intentando utilizar , el siguiente, creo que equivalente en FMX para Android e IOS. FMX.StdCtrls.TAniIndicator Estoy utilizando Delphi Seattle 10. Gracias igualmente por tu ayuda. Saludos |
#5
|
||||
|
||||
Pequeño desliz
Para animarlo en FMX es Indicator.Enabled := True (False obviamente lo contrario) Despues hay una propiedad Style para modificar un poco la apariencia El tamaño en este caso lo definis como en cualquier control FMX (Size.Height y Size.Width) Para el color es mas complicado.. tenes que editar el estilo del objeto FMX. Eso se hace desde el IDE, boton derecho sobre el control, edit custom style o edit default style. Luego tenes que manipular los bitmap (los styles en FMX son basados en bitmaps). Es bastante engorroso pero se podrian hacer cosas bastante potentes, tenes control absoluto de la apariencia del control En este video muestran algo |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Usar TServerSocket y TClientSocket para enviar "streams" más o menos "grandes" | dec | Internet | 9 | 04-08-2015 16:11:50 |
Existe algun componente "linea" y "vista miniatura"? | DSK25 | C++ Builder | 6 | 09-06-2013 01:23:05 |
Imagen de "Cargando" con InstallShield | anzora | Varios | 1 | 26-10-2011 11:29:04 |
El programa se queda "colgado" mientras copia y luego "despierta" | NeWsP | OOP | 5 | 10-03-2010 22:05:40 |
Necesito llamar a métodos de clases "hija" desde su clase "padre" | Flecha | OOP | 17 | 20-04-2007 00:03:53 |
|