FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour SOLUCIONADO Alternar fondo de pantalla BMP segun valor
Posts: 22
Joined: Sat Oct 24, 2009 11:55 AM
SOLUCIONADO Alternar fondo de pantalla BMP segun valor
Posted: Fri Sep 15, 2023 10:10 AM
Buenos días,
Necesito alternar la imagen del fondo BMP de de pantalla (completa), según un valor, solo hay 2 posibilidades, o 1 ó 2.
Consigo que abra el BMP del 1er valor, pero al capturar el segundo, permanece en pantalla el primero.
Se que hago algo mal. Es la primera vez que me meto en este charco.
Gracias de antemano.
Code (fw): Select all Collapse
if valor3 = 1
    @  0,0 BITMAP oBmp FILE "bmp1.bmp" OF oDlg pixel size 1920,1080
elseif valor3 = 2
  @  0,0 BITMAP oBmp FILE "bmp2.bmp" OF oDlg pixel size 1920,1080
endif
La perseverancia es la virtud de los que llegan a la meta.
Posts: 1344
Joined: Wed Nov 16, 2005 09:14 PM
Re: Alternar fondo de pantalla BMP segun valor obtenido.
Posted: Fri Sep 15, 2023 12:20 PM
Hola, en que contexto lo haces? Hay un valor que cambia en el transcurso del programa y queres actualizar la imagen?
Prueba recargando la imagen con oBmp:LoadImage("bmp2.bmp")
Code (fw): Select all Collapse
#include "FiveWin.ch"

function Main()
                                                                      
   local n := 1, oBmp, oBtn, oDlg
   DEFINE WINDOW oDlg TITLE "Cambiar imagen"    
   @ 2, 2 BTNBMP oBtn OF oDlg ACTION ((n := IF(n = 1, 2, 1),;
          oBmp:LoadImage(IF(n=1,"..\bitmaps\cara2.bmp","..\bitmaps\cara3.bmp")),;
          oBmp:Refresh())) PROMPT "Cambiar";
   SIZE 60,60 ADJUST
   @  2,100 BITMAP oBmp FILE "..\bitmaps\cara2.bmp" OF oDlg pixel size 1920,1080
 
   ACTIVATE WINDOW oDlg             
   
   

return nil
Posts: 8523
Joined: Tue Dec 20, 2005 07:36 PM
Re: Alternar fondo de pantalla BMP segun valor obtenido.
Posted: Fri Sep 15, 2023 01:35 PM
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 22
Joined: Sat Oct 24, 2009 11:55 AM
Re: Alternar fondo de pantalla BMP segun valor obtenido.
Posted: Fri Sep 15, 2023 02:17 PM

Muchísimas gracias por vuestra ayuda. Ha funcionado con PALMBMPDRAW

Un abrazo.

Enviado desde mi 22081212UG mediante Tapatalk

La perseverancia es la virtud de los que llegan a la meta.
Posts: 22
Joined: Sat Oct 24, 2009 11:55 AM
Re: Alternar fondo de pantalla BMP segun valor obtenido.
Posted: Fri Sep 15, 2023 02:31 PM
Code (fw): Select all Collapse
if valor3 = 1

    oBmp = readbitmap( 0, "bmp1.bmp" )
    cambiaback( oDlg, hDC2, oBmp )   

elseif valor3 = 2

     oBmp = readbitmap( 0, "bmo2.bmp" )
    cambiaback( oDlg, hDC2, oBmp )

endif[

STATIC FUNCTION cambiaback( oWnd, hDC2, hBmp )

    LOCAL nTop:=0, LOCAL nLeft:=0, nWidth:=oWnd:nWidth(), nHeight:=oWnd:nHeight()

    IF hBmp = 0
      RETURN NIL
    ENDIF

    PALBMPDRAW( hDC2, nTop, nLeft, hBmp, , nWidth, nHeight )

    RETURN NIL
La perseverancia es la virtud de los que llegan a la meta.

Continue the discussion