PDA

Ver la Versión Completa : Convertir el dxTreeList de Developper en una imagen


David
06-10-2008, 12:10:57
hola

Tengo un componente el Developper express 3.2 y en concreto estoy trabajando con el componete dxTreeList, que es como el TreeView de Delphi, pero permite utilizar columnas, lo cual es bastante practico.

Quiero convertir el arbol resultante en una imagen, y el código que utilizo, es el mismo que se utiliza con el componente de delphi el TreeList, con la diferencia que para este componente no funciona.



// Con el TTreeView funciona, pero no con el dxTreeList de developper
bmp := TBitmap.Create;

//doy dimensiones al bmp
bmp.Width := Arbol.Width;
bmp.Height := Arbol.Height;
bmp.Canvas.Lock;
dxTreeList1.Perform(WM_PRINT, bmp.Canvas.Handle,PRF_CHILDREN or
PRF_CLIENT or PRF_NONCLIENT);


bmp.Canvas.UnLock;


Hago dos preguntas, como es muy dificil que haya alguien que utilice este componente y menos para hacer esto.

La pregunta sería ¿hay alguna forma de convertir un componente en imagen, mediante canvas u otra manera? Es decir, dado un componente, como convertirias lo que se dibuja y todo en una imagen.

Si alguien sabe como hacerlo en este componente, pues perfecto.

El formato de la imagen me da igual, puede ser bmp,jpeg,metafile, etc...

Un saludo

duilioisola
06-10-2008, 17:18:36
Busca en el foro como imprimir la pantalla. (captura de pantalla)
Luego, sabiendo las coordenadas del componente, podrás tomar solo esa porción.

Este truco (http://www.clubdelphi.com/trucos/index.php?id=56&scroll=0&scrollb=0), es para imprimir la pantalla.
Lo saque de este hilo (http://www.clubdelphi.com/foros/showthread.php?t=60427&highlight=capturar+pantalla)

David
07-10-2008, 21:17:23
Hola

Lo de imprimir pantalla me ha resultado bien, lo malo es en algún caso puntual donde hay muchos artículos y hay una scrollbar y articulos que no se ven.

No sé como solucinarlo en dicho caso.

duilioisola
07-10-2008, 21:23:51
Que te parece maximizar, imprimir y restaurar?

Ahora no tengo un delphi a mano, pero hay una propiedad de los Forms que determina si está maximizado o no.

David
07-10-2008, 21:31:59
si esta todo maximizado, pero aún así hay scroll, es lo malo, el componente ocupa toda la pantalla si hay muchos articulos, pero en algún caso ocupa toda la pantalla y encima hay scroll.