Page 1 of 1

Para Sebastián Almirón

Posted: Sat Feb 17, 2007 3:27 am
by Miguel Rivera
Sebastian:

Aplique lo que me indicastes para colocar el fondo de pantalla en mi aplicacion, pero algo no estoy haciendo bien. No muestra ningun logo, y si declaro oBmplogo como local, el la rutina me dice que no existe esta variable.

NOTA: Uso Clipper 5.3b, FW 2.4 y Blinker 7.0

Por tu ayuda, muchas gracias.

Saludos,
Miguel


El archivo BMP, se llama FONDO.BMP
Defino de esta forma:

DEFINE WINDOW oWnd TITLE 'Sistema Inmobiliaria' BRUSH oBru Menu Menu() MDI ICON oIco ;
COLOR Rgb( 130, 130, 130 ), Rgb( 130, 130, 130 )
::
::
::

oWnd:bResized := {|| Inilogo() }
ACTIVATE WINDOW oWnd MAXIMIZED;
ON INIT Inilogo() VALID MsgYesNo( "¿Salir del Programa?", cVersion )

Rutina Inilogo(), Ojo Valtype(oBmplogo) = O


Function IniLogo()
local aclirect := getclientRect(oWnd:hWnd)

if valtype(oBmplogo) = 'O'
oBmpLogo:End()
endif

@ -100, -100 BITMAP oBmplogo RESOURCE 'FONDO.BMP' ADJUST OF oWnd PIXEL NO BORDER

oBmpLogo:nTop := int( (aclirect[3]/2) - (int( (int( aclirect[4]*36/100 )*oBmpLogo:nHeight)/oBmpLogo:nWidth )/2) )
oBmpLogo:nLeft := int( (aclirect[4]/2) - (int( aclirect[4]*36/100 )/2) )
oBmpLogo:nHeight := int( (int( aclirect[4]*36/100 )*oBmpLogo:nHeight)/oBmpLogo:nWidth )
oBmpLogo:nWidth := int( aclirect[4]*36/100 )
oBmpLogo:Refresh()

return nil

Posted: Fri Feb 23, 2007 7:41 am
by Sebastián Almirón
Miguel:

En la línea:
@ -100, -100 BITMAP oBmplogo RESOURCE 'FONDO.BMP' ADJUST OF oWnd PIXEL NO BORDER

Algo tienes mal, porque si el logo está en un fichero llamado Fondo.BMP. RESOURCE hay que cambiarlo por FILE. Yo lo tengo puesto RESOURCE porque el bitmap lo tengo en una DLL de recursos.

oBmpLogo tienes que daclararla en el main() como public o private, ya que se utiliza en la función main() y en inilogo(), o bien pasarlo como parámetro a esta última.

Saludos

Posted: Fri Feb 23, 2007 1:11 pm
by Miguel Rivera
Hola Sebastian:

Muchas gracias por tu aclaracion, lo aplico y te cuento.

Saludos,
Miguel
Sebastián Almirón wrote:Miguel:

En la línea:
@ -100, -100 BITMAP oBmplogo RESOURCE 'FONDO.BMP' ADJUST OF oWnd PIXEL NO BORDER

Algo tienes mal, porque si el logo está en un fichero llamado Fondo.BMP. RESOURCE hay que cambiarlo por FILE. Yo lo tengo puesto RESOURCE porque el bitmap lo tengo en una DLL de recursos.

oBmpLogo tienes que daclararla en el main() como public o private, ya que se utiliza en la función main() y en inilogo(), o bien pasarlo como parámetro a esta última.

Saludos