Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-12-2014
Gonza10 Gonza10 is offline
Miembro
NULL
 
Registrado: oct 2014
Posts: 13
Poder: 0
Gonza10 Va por buen camino
Desplazamiento dentro de un PaintBox

Hola, tengo un problema necesito hacer un desplazamiento dentro de un paintbox con un scrollbar alguien tiene idea si esto es posible? me pidieron que mi programa tenga 120 paginas, yo lo que hice fue hacer un paintbox bastante grande y necesito moverme dentro de el para ir recorriendo las diferentes paginas.

Otra pregunta se puede guardar el contenido de un paintbox como por ejemplo un dibujo, yo pude guardar lo que es la parte de texto solo falta guardar los dibujos.
Responder Con Cita
  #2  
Antiguo 15-12-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿120 páginas de qué?
Responder Con Cita
  #3  
Antiguo 16-12-2014
Gonza10 Gonza10 is offline
Miembro
NULL
 
Registrado: oct 2014
Posts: 13
Poder: 0
Gonza10 Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿120 páginas de qué?
claro, son 120 paginas en las que se puedan cargar imágenes dibujar y escribir texto.
Responder Con Cita
  #4  
Antiguo 16-12-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Gonza10.
Cita:
Empezado por Gonza10 Ver Mensaje
claro, son 120 paginas en las que se puedan cargar imágenes dibujar y escribir texto.
En realidad, Casimiro sabe perfectamente que se puede graficar en ellas, lo que deseaba saber es de que tipo eran esas páginas.

Con esa respuesta quedamos como entonces... Pero si se trata de un sólo gráfico que has dividido en páginas de tamaño arbitrario, una opción es hacer que el Parent del TPainBox sea un TScrollBox para así usar los TScroolBar de este componente (con el detalle que tendrás que repintar el gráfico en el evento OnPaint del TPainBox).

Un ejemplo de lo que te comento:
Código Delphi [-]
...
implementation

var
  Picture: TPicture;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Picture:= TPicture.Create;
  Picture.LoadFromFile('Las_120_Páginas.JPG');
  PaintBox1.Width := 2000;   // Ancho de la página en píxels (Ej.)
  PaintBox1.Height:= 16000;  // Largo de las páginas en píxeles (Ej.)
  PaintBox1.Canvas.Draw(0,0, Picture.Graphic);
  PaintBox1.Parent:= ScrollBox1;
end;

procedure TForm1.PaintBox1Paint(Sender: TObject);
begin
  PaintBox1.Canvas.Draw(0, 0, Picture.Graphic);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  Picture.Free;
end;
Si no es lo que buscas, quedamos a la espera de tu respuesta a la consulta del mensaje #2

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 16-12-2014
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.267
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
¿Cómo te mueves por esas páginas?
Tal vez podría servir (dependiendo de lo que tengas que hacer) un array de componentes, de forma que cada página sea un componente TPaintBox.

Esto tendría varias ventajas, aunque, como he dicho, dependiendo de lo que tengas que hacer, este planteamiento tal vez no sea "adecuado".
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #6  
Antiguo 16-12-2014
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Meter 120 páginas de lo que sea en un PaintBox es un gasto de recursos innecesario, que ralentizará tanto la carga como el visionado. Lo mismo para la solución de Neftali de crear un TPaintBox por página, terminando con 120 componentes en memoria.

Lo lógico es ir manejando las páginas una a una, cargándolas y mostrándolas cuando sea necesario y "borrándolas" cuando ya no se necesiten. Además, así será mucho más sencillo y rápido "desplazarte" hasta una página concreta, sin tener que andar calculando anchos y altos para moverse hasta ella.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #7  
Antiguo 16-12-2014
Gonza10 Gonza10 is offline
Miembro
NULL
 
Registrado: oct 2014
Posts: 13
Poder: 0
Gonza10 Va por buen camino
En primera instancia mi idea era esa de hacer un paintbox grande que me abarquen 120 paginas de tamaño 64x16, tal vez habría otra manera de hacerlo con un array pero el problema es que cuando cree una nueva me va a pisar la anterior y me borrara lo que estaba haciendo.

Les dejo lo que hice para que nos entendamos mejor. saludos
Archivos Adjuntos
Tipo de Archivo: rar Muestra.rar (99,4 KB, 10 visitas)
Responder Con Cita
  #8  
Antiguo 16-12-2014
Gonza10 Gonza10 is offline
Miembro
NULL
 
Registrado: oct 2014
Posts: 13
Poder: 0
Gonza10 Va por buen camino
Cita:
Empezado por Gonza10 Ver Mensaje
En primera instancia mi idea era esa de hacer un paintbox grande que me abarquen 120 paginas de tamaño 64x16, tal vez habría otra manera de hacerlo con un array pero el problema es que cuando cree una nueva me va a pisar la anterior y me borrara lo que estaba haciendo.

Les dejo lo que hice para que nos entendamos mejor. saludos
Lo subo de nuevo si alguien tiene problemas notifique!

https://mega.co.nz/#!ZV5XWKbL!1_tOXB...TseK8-GocmhttM

Última edición por Gonza10 fecha: 16-12-2014 a las 21:10:31.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con PaintBox b3nshi Gráficos 2 26-07-2007 16:10:35
Coordenadas en el PaintBox fabiof2000 Gráficos 2 27-09-2006 10:08:03
paintbox pattyka Gráficos 2 25-06-2006 20:01:57
Problemas de desplazamiento dentro de un DBgrid? andressanchez Varios 1 29-07-2005 21:55:43
Repintar un paintbox vipata Gráficos 0 14-02-2005 18:37:24


La franja horaria es GMT +2. Ahora son las 07:35:06.


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
Copyright 1996-2007 Club Delphi