ProgressBar en un celda de DBGrid
Es posible dibujar un ProgressBar en un celda de DBGrid?, y me refiero al DBGrid standard de Delphi. (Esta el Next Grid que si lo permite y es freeware).
He visto formas de dibujarlo en un StatusBar, pero quiciera saber si se puede en un DBGrid, para visualizar campos integer. Saludos |
Bueno, me voy a autoresponer, porque encontré un artículo interesante "googleando" por otros pagos:
Usando el evento OnDrawColumnCell, se pueden utilizar estas rutinas genéricas para pintar un ProgressBar en cualquier TCanvas (El segundo permite pintar un texto entero,y el primero, además una figura opcional del porcentaje). Esta rutina invierte el color del texto de modo que el texto sea siempre legible:
Y bueno, voy a ver si interpreto como usar todo esto. Lo postié porque me pareció muy interesamte. Saludos |
Bueno, estoy probando, aunque por ahora está demaciado "frutal"
No es ohhh la barra de progreso, pero es una alternativa muy buena. Saludos |
Volviendo al control clásico del ProgressBar, yo puedo hacer lo siguiente
Creo el ProgressBar dentro del DBGrid y todo muy lindo, pero... como la posiciono en una determinada celda? Saludos |
mas que en una celda creo que tendrias que pensar a que registro de la tabla se la tendrias que asignar, por que, imagina que logras pintarla en la celda [2,2], siempre sera en esa, sin importar los datos, si en tal caso se borrara el registro 2 la prox. ves el reg.3 estara en la posicion del 2 y con la barra.
Tal ves lo esto lo tienes contemplado y no lo he entendido asi. Otra cosita, cuando haces el OnDrawColumncell en el encabezado del mismo te viene la columna que se esta pintando, solo deberias preg si es la 10 (segun tu ejemplo), o por el nombre; y si es asi pintar, de lo contrario por cada columna esta pintando la 10. No es problema ni da error, es solo no hacer lo que no queremos. Suerte y luego verifico este codigo para tenerlo en cuenta en algun proyecto. |
Si Juan, es tal cual lo que estoy pensando.
|
La franja horaria es GMT +2. Ahora son las 05:41:02. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi