TIMAGE WINDOW MDI ?? PORQUE NÃO FUNCIONA?

Post Reply
AOKISANTOS
Posts: 210
Joined: Sun Jul 23, 2006 1:15 am

TIMAGE WINDOW MDI ?? PORQUE NÃO FUNCIONA?

Post by AOKISANTOS »

Antonio, para colocar uma imagem na area de trabalho eu utilizava assim :

DEFINE WINDOW oWnd ;
ICON OICO;
MENU PreparaMenu()

ACTIVATE WINDOW oWnd MAXIMIZED on RESIZE ( showLogo(.T.))

*******************************
FUNCTION showLogo(jafundo)
*******************************
local fupla:="sgs.jpg"

@ 0,0 IMAGE oImg ADJUST SIZE oWnd:GetCliRect():nRight,;
oWnd:GetCliRect():nBottom OF oWnd NOBORDER

oImg:Progress(.F.)
oImg:LoadBmp(fupla)
RETURN(.t.)


E funcionava certinho, porém ao colocar MDI na window parou de funcionar, ficou um fundo cinza escuro:

DEFINE WINDOW oWnd MDI;
ICON OICO;
MENU PreparaMenu()

ACTIVATE WINDOW oWnd MAXIMIZED on RESIZE ( showLogo(.T.))



Antonio como resolver isso?


Desde já te agradeço.

Fique com Deus

Aoki
FWH25+XHARBOUR 99.50
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Aoki,

Al usar MDI debes usar:
... OF oWnd:oWndClient ...

pero tu código es erróneo ya que estás creando un objeto image CADA VEZ que se produce un resize de la ventana principal. Hazlo así:

Code: Select all

oBmp = TImage():Define( , "sgs.jpg" ) 

oWnd:oWndClient:bPainted := {|hDC| PalBmpDraw( hDC, 0, 0,oBmp:hBitmap,, oWnd:oWndClient:nWidth, oWnd:oWndClient:nHeight,, .T.) }
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply