CAMBIAR IMAGEN DE FONDO

CAMBIAR IMAGEN DE FONDO

Postby Marco Augusto » Mon May 10, 2010 6:36 pm

CON ESTA FUNCION ASIGNO UNA IMAGEN COMO FONDO DE VENTANA

DEFINE BITMAP oBmpTIT FILENAME "DIB.bmp"

DEFINE WINDOW oWnd TITLE cTitle ;
COLORS CLR_BLACK, CLR_NBLUE ;
MENU BuildMenu() MENUINFO 8 ;
ICON oIco MDI

ACTIVATE WINDOW oWnd MAXIMIZED ;
ON PAINT DrawBitmap( hDC, oBmpTIT:hBitmap, 0, 0, oWnd:oWndClient:nWidth(), ;
oWnd:oWndClient:nHeight() )


COMO LA PUEDO CAMBIAR EN TIEMPO DE EJECUCION ?

GRACIAS
Marco Augusto Rodriguez Manzo
FWH January 2020 Xharbour 1.2.3
MySQL 5.0.19 Fastreport

PERZO SOFT
Sistemas Personalizados
User avatar
Marco Augusto
 
Posts: 144
Joined: Wed Oct 12, 2005 1:03 pm
Location: Cuernacava, Morelos Mexico

Re: CAMBIAR IMAGEN DE FONDO

Postby Daniel Garcia-Gil » Mon May 10, 2010 7:00 pm

Marco..


Intenta con:

oBmp:LoadBmp( cBmpFile )
oWnd:Refresh()
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: CAMBIAR IMAGEN DE FONDO

Postby Marco Augusto » Tue May 11, 2010 3:01 pm

Gracias por tu antencion

Pero no funciona

Sí toma el nuevo bitmap
y lo cambia hasta que minimizo y maximizo la ventana

No actualiza la ventana en el momento

ya probé con sysrefresh()
oWnd:refresh()
Marco Augusto Rodriguez Manzo
FWH January 2020 Xharbour 1.2.3
MySQL 5.0.19 Fastreport

PERZO SOFT
Sistemas Personalizados
User avatar
Marco Augusto
 
Posts: 144
Joined: Wed Oct 12, 2005 1:03 pm
Location: Cuernacava, Morelos Mexico

Re: CAMBIAR IMAGEN DE FONDO

Postby Daniel Garcia-Gil » Tue May 11, 2010 3:50 pm

Marco

Disculpa fue mi error, no me di cuenta que trabajaban en MDI hazlo asi

oWnd:oWndClient:Refresh()
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: CAMBIAR IMAGEN DE FONDO

Postby Marco Augusto » Tue May 11, 2010 8:11 pm

Muchas gracias
Funcionó perfecto
Marco Augusto Rodriguez Manzo
FWH January 2020 Xharbour 1.2.3
MySQL 5.0.19 Fastreport

PERZO SOFT
Sistemas Personalizados
User avatar
Marco Augusto
 
Posts: 144
Joined: Wed Oct 12, 2005 1:03 pm
Location: Cuernacava, Morelos Mexico

Re: CAMBIAR IMAGEN DE FONDO

Postby MarioG » Sun Jan 23, 2011 12:49 am

Retomo este hilo que es similar a mi problema.
Este es mi codigo:
Code: Select all  Expand view

...
soWnd0:bPainted := {|| SetLogo( oConxFTP ) }
...
static procedure SetLogo( oConxFTP )
local cImage:= BeforAtNum( "\", SubStr(  oConxFTP:cPathDbf,3 ) ) +"\bmp\SiGeCo_iGO32.jpg", ;
      nTop, ;
      nLeft

   @ 0, 0 IMAGE soImg SIZE 75, 75 PIXEL NOBORDER OF soWnd0 UPDATE

   nTop := ( soWnd0:nHeight - soImg:nHeight ) / 2
   nLeft:= ( soSplit:nLast - soImg:nWidth ) /2  //soSplit:nFirst+

   soImg:Progress( .f. )
   soImg:LoadBmp( cImage )
   soImg:Move( nTop, nLeft,,,TRUE )
   soImg:Refresh()


En principio no logro ponerlo en el centro de la ventana
Image
No obstante lo que muestro es en un monitor de 1440x900. Si ejecuto el prg en otro de res. 1024x780 la figura ya no entra en el ercuadro
Lo mismo ocurre con el siguiente dialogo:
Image

al ejecutarlo en otra resolución el dialogo (que esta en un recurso como style dialgo frame, caso contrario se lo puede mover con el mouse) se muestra fuera de la ventana
Cual es la mejor manera de trabajar con splitters y para distintas resoluciones?

muchas gracias
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: CAMBIAR IMAGEN DE FONDO

Postby sysctrl2 » Mon Jan 24, 2011 6:37 pm

Mario yo lo hago mas o menos como se indica en el siguiente codigo.

Code: Select all  Expand view
cFileFondo:="Logo.jpg"
oBmp := TImage():Define( ,cFileFondo )
DEFINE WINDOW oWnd  MDI
DEFINE BUTTONBAR oBar OF oWnd SIZE 80, 60 2007 //LEFT //RIGHT

set MESSAGE of oWnd to 'mensaje';
      DATE TIME KEYBOARD COLOR '*rb+/w' FONT oFont2 2007

      nAncho := GetSysMetrics( 0 )
      nAlto  := GetSysMetrics( 17 ) - GetSysMetrics( 15 ) - oBar:nHeight() - oWnd:oMsgBar:nHeight()

      oWnd:bPainted  := {|hDC| PalBmpDraw( hDC,0,0,oBmp:hBitmap,,nAncho, nAlto,, (.T.)) }

ACTIVATE WINDOW oWnd MAXIMIZED
 


saludos..
Cesar Cortes Cruz
SysCtrl Software
Mexico

' Sin +- FWH es mejor "
User avatar
sysctrl2
 
Posts: 1011
Joined: Mon Feb 05, 2007 7:15 pm

Re: CAMBIAR IMAGEN DE FONDO (SOLUCIONADO)

Postby MarioG » Wed Jan 26, 2011 1:02 am

Cesar; muchisimas gracias, ya mi matemáticas no daba para más! :shock: :)
Lo que yo necesitaba era usar esta funcion PalBmpDraw( hDC, ....) pues me hice un lio con la TImage declarandola como comando

Saludos
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: CAMBIAR IMAGEN DE FONDO

Postby Willi Quintana » Fri Jul 08, 2011 7:31 pm

Hola,, Como le haces,, a mi no me funciona el cambio del imagen en una MDI en tiempo de ejecucion,,
Salu2
User avatar
Willi Quintana
 
Posts: 1018
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú

Re: CAMBIAR IMAGEN DE FONDO

Postby MarioG » Mon Jul 11, 2011 1:12 pm

Willi;
No se si es aplicable en entorno MDI, nunca lo probé.
Lo que hago es lo siguiente:

// Ventana
DEFINE ICON aO[_Ico] RESNAME "iGO"

DEFINE WINDOW soWnd0 ;
TITLE "Protocolo de Transferencia de Archivos (FTP) | Origen: "+Upper( oConxFTP:cPuntoVta ) ;
ICON aO[_Ico] COLOR CLR_BLACK,CLR_BLACK ;
NOMAXIMIZE ;
FROM 2000,5 TO 2001,5 ;
MENU BuildMenu()
...

soWnd0:bPainted:= {|hDC| SetLogo( hDC ) }

...
ACTIVATE WINDOW soWnd0 ON INIT ( soSMsg:Hide(), soWnd0:Center() )
// Fin

// ········································································· \\
// L O G O
static procedure SetLogo( hDC, oConxFTP )
local oImg, ;
cLogo:= ".\bmp\SiGeCo_iGO32.jpg"

oImg:= TImage():Define( , cLogo )

PalBmpDraw( hDC, (soWnd0:nHeight-oImg:nHeight ) /3, soSplit:nFirst+( soSplit:nLast-oImg:nWidth) /2, oImg:hBitmap,, oImg:nWidth, oImg:nHeight,, TRUE )

// Fin
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: CAMBIAR IMAGEN DE FONDO

Postby Willi Quintana » Mon Jul 11, 2011 1:50 pm

Hola,,, si funciona en MDI, gracias a todos por las sugerencias,,,
Salu2
User avatar
Willi Quintana
 
Posts: 1018
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 37 guests