FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
hola
para lo que tu quieres, yo usaria un TPanel y dentro un TImage, cargado con el bmp con los numeros. en el ejemplo de codigo he usado unos TSpeedButton con los numeros del 0 al 9. El TPanel tiene que tener el ancho de un numero cualquiera, que sera, logicamente, la decima parte del bmp
para el tema del parpadeo, puedes hacer mas o menos lo mismo pero con la propiedad Top del TImage, y el bmp hacerlo el doble de alto, la parte de arriba con el numero en verde y la de abajo en rojo, por ejemplo de forma que, usando un TTimer te vaya pasando de rojo a verde segun el intervalo que le pongas. espero haberte aclarado algo, un saludo |
#2
|
|||
|
|||
He encontrado ejemplos como este:
El ejemplo que encontré entre algunos, siempre se basan midiendo de un TPaintBox, TImage o de un TPanel PEGADOS al Form (es decir en el formulario están como OBLIGADOS uno de estos objetos para calcularlos con el CopyRect). Pero no encuentro un ejemplo que teniendo el BitMap en mi Directorio calcular (un x-ancho) y mostrarlo evidentemente en un TPaintBox, TImage, TPanel o en el Form solo UNA PARTE del BMP después de cierto cálculo. Intentaré explicarlo sencillamente, tengo un TButton y un TPanel (con 2 TImage)...... ojo que no se si elegí la forma correcta aquí de los componentes, derepente hubiera sido mejor mostrarlos en un TpaintBox o directamente en el Form en cierta posición, no sé:
En el Case para cada caso mostraría un número de miBMP recortado en los TIMage contenidos en el TPanel o en un TPaintBox. Quizá me digan que más sencillo resultaría crear BMPs para cada uno y mostrarlos.... de acuerdo! pero lo que no quiero es llenar por ejemplo de 10 BMPs como fuente de números en mi Directorio, mucho menos de 23 BMPs del Abecedario. Prefiero crear uno LARGO (uno solo) conteniendo a todos, para luego recortarlos uno a uno y mostrarlos según necesidades y cálculo. Como dije arriba, de los ejemplos que encontré en la Red, todos se basan en el CopyRect teniendo el gráfico en el Form, y así calculando sus medidas y recortarlo. Lo que yo necesito es ver la forma de hacer ese recorte sin que se vea (sin que se encuentre) en el Form, solo sabiendo las medidas de mi BMP que se encuentra en mi directorio y tomando en el Case un ancho diferente para cada uno. - Luego será otro lo del blinkado. Última edición por Deiv fecha: 11-06-2006 a las 01:50:50. |
#3
|
||||
|
||||
Vamos a ir por partes, o mejor por trozos
Primero lo que tu pides:
Para utilizar esa funcion, pasale como parametro la ruta del bmp con los diferentes dibujos uno a continuacion del otro en horizontal, pasale tambien el numero de elementos que contine y el indice del que quieres dibujar teniendo en cuenta que el primero sera el 0 y el ultimo Count-1. Por ejemplo, si el bitmap tiene 10 elementos:
Ahora te digo lo que haria yo, utilizaria un TImageList y en el OnCreate del formulario utilizaria esto para cargar las imagenes:
Y luego cada vez que lo quisiera dibujar utilizaria esto otro:
Tu decides ... Última edición por seoane fecha: 11-06-2006 a las 03:42:29. |
#4
|
|||
|
|||
Hola Deiv
la verdad es que no entiendo realmente tu problema ¿ estas obligado a cargar la imagen ?, por supuesto, siempre tendras que cargarla en memoria para hacer los calculos, da lo mismo el sistema que uses. ¿Que problema te supone cargar un JPG de 32*320 pixel?, son 5 Kb. Ademas, teniendola en tu ejecutable te evitas que por error borren tu imagen del directorio y te salte una excepcion. Con la solucion que te propongo solo tienes que tener un TPanel mas en tu formulario (de 32 * 32 pixel) que contiene la imagen completa y luego solo es cuestion de moverla con un calculo sencillo como es, en tu caso
tienes, por supuesto, muchas otras soluciones, pero mas sencillas y con menos codigo... bueno, tu tienes la ultima palabra, utiliza la solucion que mas te convenga y haznos saber como te queda un saludo |
#5
|
|||
|
|||
Gracias amigos, en este momento no dispongo de Delphi, llegando a casa probaré las sugerencias y luego les comento.
Saludos |
#6
|
|||
|
|||
Gracias Seoane (interesante tu nueva identificación "Registered User") y gracias Madriles por sus orientaciones, me solucionaron el caso, tienen razón existe muchas formas, yo ya la estaba viendo "cuadrado" pensando que no había solución, ahora solo me queda como realizar el BLINKADO con un TTimer para el mismo caso.
|
#7
|
|||
|
|||
parpadeo del bmp
hola de nuevo,
para el parpadeo del bmp, siguiendo con mi propuesta, solo tienes que hacer el bmp el doble de alto, en la parte superior el numero normal y en la parte de abajo el numero de parpadeo, nose en color verde por ejemplo asi con este codigo u otro parecido lo consigues
un saludo |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
manejar directorios | XxEdwinxX | Varios | 1 | 20-12-2005 22:26:28 |
como manejar el datapicker | jas010 | Conexión con bases de datos | 7 | 04-04-2005 21:32:40 |
Manejar subtitulos... | SGOFx | Varios | 6 | 05-02-2005 20:09:16 |
Manejar dirección API | cardomjar | Varios | 7 | 08-12-2004 12:13:59 |
Manejar Componetes | sergio_015 | OOP | 12 | 25-11-2004 11:01:47 |
|