FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Imagen con Timage
Posts: 428
Joined: Thu Oct 19, 2006 12:28 PM

Imagen con Timage

Posted: Sat Jan 06, 2007 02:09 PM

Hola Amigos

Quisiera pintar en un recuadro un albaran que he extraido de un array y no me lo pinta, utilizo freeimage y lo hago así

Cargo el array y extraigo el primer fichero .jpg


ficheros:=cargaarray()

static function cargaarray()
local i,ficheros,longitud,numfiles
Ficheros := Array( ADir( Publicas:cUnidad+".jpg" ) )
Longitud := Array( ADir( Publicas:cUnidad+"
.jpg" ) )
NumFiles := aDir (Publicas:cUnidad+"*.jpg", Ficheros, Longitud)
return ficheros[1]


Ahora defino la imagen
oBmp1:= TImage():Define( , Publicas:cUnidad+Ficheros )

Y ahora en un Dialogo que tengon un control destinado a ello, lo pinto
REDEFINE IMAGE oBmp1 ID 4001 OF oDlg SCROLL ADJUST UPDATE
oBmp1:Progress( .f. )


Que me falta?

El control del Dialogo lo he creado con pellesc y lo he probado como custom control y como bitmap.

Saludos

Jose Luis

--------------------------

Saludos



Jose Luis
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Imagen con Timage

Posted: Sat Jan 06, 2007 08:28 PM
José Luis,

Esto no hace falta:
oBmp1:= TImage():Define( , Publicas:cUnidad+Ficheros )

Añade este comando a FiveWin.ch:
#xcommand REDEFINE IMAGE [ <oBmp> ] ;
             [ ID <nId> ] ;
             [ <of: OF, WINDOW, DIALOG> <oWnd> ] ;
             [ <resource: NAME, RESNAME, RESOURCE> <cResName> ] ;
             [ <file: FILE, FILENAME, DISK> <cBmpFile> ] ;
             [ <lClick: ON ClICK, ON LEFT CLICK> <uLClick> ] ;
             [ <rClick: ON RIGHT CLICK> <uRClick> ] ;
             [ <scroll: SCROLL> ] ;
             [ <adjust: ADJUST> ] ;
             [ CURSOR <oCursor> ] ;
             [ MESSAGE <cMsg>   ] ;
             [ <update: UPDATE> ] ;
             [ WHEN <uWhen> ] ;
             [ VALID <uValid> ] ;
             [ <transparent: TRANSPARENT> ] ;
       => ;
          [ <oBmp> := ] TImage():ReDefine( <nId>, <cResName>, <cBmpFile>,;
             <oWnd>, [\{ |nRow,nCol,nKeyFlags| <uLClick> \}],;
                     [\{ |nRow,nCol,nKeyFlags| <uRClick> \}],;
             <.scroll.>, <.adjust.>, <oCursor>, <cMsg>, <.update.>,;
             <{uWhen}>, <{uValid}>, <.transparent.> )

Y en tu programa haz:
REDEFINE IMAGE oBmp1 ID 4001 OF oDlg SCROLL ADJUST UPDATE 
oBmp1:Progress( .f. ) FILENAME Publicas:cUnidad+Ficheros
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 428
Joined: Thu Oct 19, 2006 12:28 PM

Imagen con Timage

Posted: Sat Jan 06, 2007 10:15 PM

Gracias Antonio

Lo he probado y funciona

Jose Luis

--------------------------

Saludos



Jose Luis
Posts: 428
Joined: Thu Oct 19, 2006 12:28 PM

Imagen con Timage

Posted: Sat Jan 06, 2007 11:33 PM

Una cuestión mas y ya acabo

Como he explicado hago el siguiente proceso:
- Cargo las imagenes del directorio en un array
- Pinto la primera a la vez que el nombre de la imagen me sirve de número de albaran.
- Cuando acepto, borro el fichero jpg del directorio y vuelvo a hacer la misma operación sin salir del dialogo, es decir cargar las imagenes y coger la primera.
Pero ahora veo que me ha borrado el fichero del directorio, aunque me sigue presentando en pantalla la imagen anterior. Tengo que salir del diálogo, volver a entrar para que me refresque la imagen. Aunque ponga oDlg:Update() o oBmp1:Refresh() sigue mostrandome la imagen que ya está borrada.

Como Refresco a la nueva imagen?

Saludos

Jose Luis

--------------------------

Saludos



Jose Luis
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Imagen con Timage

Posted: Sun Jan 07, 2007 12:11 AM

oBmp1:LoadImage( , cNombreImagen )
oBmp1:Refresh()

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 428
Joined: Thu Oct 19, 2006 12:28 PM

Imagen con Timage

Posted: Sun Jan 07, 2007 10:10 AM

Gracias Antonio

Jose Luis

--------------------------

Saludos



Jose Luis

Continue the discussion