Crear escala en ONPAINT.???
1 Archivos Adjunto(s)
Buenas Gente.!!
Estoy necesitando ayuda para poder hacer la escala que muestro en la foto en un OnPaint.!! Porque necesito q solo muestre los numeros, para poder colocar una imagen con movimiento atras... Quien me puede facilitar este codigo.?? Que la escala sea del mismo tamaño del mostrado n la imagen adjunta... C los agradeceria mucho q me hagan ste favor... |
Cuando digo OnPaint me refiero a un PaintBox.!!
|
¿Cual es el problema?
Coloca el componente y programa lo que necesites para pintar. Revisa método del Canvas. MoveTo, Line, LineTo, TextOut,... Haz alguna prueba, verás que no es complejo. |
Cita:
Ahora tengo un problemita, yo quiero colocar una animacion detras de la escala, pero no me deja, al correr la aplicacion la animacion queda por encima de la escala, por lo tanto no me deja ver las lineas y numeros de la escala Como hago para que la animacion me quede detras de las lineas de la escala.?? |
¿Cómo estás haciendo la animación?
¿Puedes explicar que componentes estás utilizando? Es un GIF animado, usas varias imágenes sucesivas,... ¿?¿?:confused::confused: |
Cita:
Y para la escala use un PaintBox del menu System. Lo q quiero es que la escala del PaintBox c vea por encima de la animacion... |
Otra cosa como podria configurar un timer + una Timagen para cuadrar que haga el cambio de una serie de imagenes.??
Mas o menos como seria el codigo para q abra la imagen 01 y luego de medio segundo abra la 02 y medio segundo despues la 03 y asi sucesivamente.... |
Problema resuelto...
PERO, por casualidad no saben como hacer para que cuando le de a un boton me abra un archivo PDF.??? |
Creo que deberías abrir un tema nuevo, de todas maneras usa la búsqueda.
Por curiosidad como lo solucionaste, podrías poner algo de código, aunque sea comparativo. |
Cita:
El codigo, algo asi: procedure TFormrotametrollave.Timer_conteoTimer(Sender: TObject); begin Xf:=Xf+1; if (Xf=9) then begin Xf:=0; end; end; procedure TFormrotametrollave.Timer_imagenesTimer(Sender: TObject); begin if (Xf=0) then begin Image1.Picture.LoadFromFile('giro_rotam\01.jpg'); end; if (Xf=1) then begin Image1.Picture.LoadFromFile('giro_rotam\02.jpg'); end; if (Xf=2) then begin Image1.Picture.LoadFromFile('giro_rotam\03.jpg'); end; if (Xf=3) then begin Image1.Picture.LoadFromFile('giro_rotam\04.jpg'); end; if (Xf=4) then begin Image1.Picture.LoadFromFile('giro_rotam\05.jpg'); end; if (Xf=5) then begin Image1.Picture.LoadFromFile('giro_rotam\06.jpg'); end; if (Xf=6) then begin Image1.Picture.LoadFromFile('giro_rotam\07.jpg'); end; if (Xf=7) then begin Image1.Picture.LoadFromFile('giro_rotam\08.jpg'); end; end; |
Creo que deberías usar, una TIimagenList con los imágenes y usar un case para la carga de imágenes, si como comentas en tu primer post la imagen es la escala que necesitas, tendría que funcionare perfectamente
Edito, Retiro lo dicho del TimagenList, ya que su tamaño en la altura es mayor que el permitido, pero voy a mirarlo. |
vagoBiker, hay un componente en las jedi que te prodia servir, el JVImagelist, es algo más complicado de usar, que el ImageList y permite tamaños mucho mayors de todas maneras lo que te comentaba del Case es lo siguiente, tu tienes el Siguiente código
y yo te propongo este otro
creo que es más claro y fácil de seguir. |
Si tienes razon, yo al momento de postear tambien me di cuenta que era posible hacerlo con un "case" como lo muestras, pero como la prueba la hic con puros "if" asi lo deje Jejejeje
Pero bueno creo q a la final voy a cambiarme al case, se ve todo mas organizado... Grax |
La franja horaria es GMT +2. Ahora son las 16:37:22. |
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