Poner imagen en MDI

Poner imagen en MDI

Postby jaba » Mon Nov 24, 2008 4:16 pm

Saludos para el Foro

Alguien me puede indicar como coloco una imagen en una ventana MDI

Cordialmente

Jairo Barbosa
jaba
 
Posts: 109
Joined: Tue Dec 12, 2006 12:39 am
Location: CALI COLOMBIA

Postby jrestojeda » Mon Nov 24, 2008 5:06 pm

Hola amigo.
Prueba lo siguiente:
Code: Select all  Expand view
DEFINE BRUSH oBrush1 RESOURCE "IMAGEN" // Defines la imagen


Code: Select all  Expand view
DEFINE WINDOW oWnd1 MDICHILD OF oWnd BRUSH oBrush1 ICON "A_ICONO1";
   TITLE "ABM de clientes";
   VSCROLL HSCROLL


Nota: La imagen está dentro de una DLL de recursos, dentro de un RC es lo mismo.

Espero te sirva.
Saludos, desde Argentina, Esteban.
User avatar
jrestojeda
 
Posts: 593
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Postby jaba » Mon Nov 24, 2008 5:23 pm

jrestojeda wrote:Hola amigo.
Prueba lo siguiente:
Code: Select all  Expand view
DEFINE BRUSH oBrush1 RESOURCE "IMAGEN" // Defines la imagen


Code: Select all  Expand view
DEFINE WINDOW oWnd1 MDICHILD OF oWnd BRUSH oBrush1 ICON "A_ICONO1";
   TITLE "ABM de clientes";
   VSCROLL HSCROLL


Nota: La imagen está dentro de una DLL de recursos, dentro de un RC es lo mismo.

Espero te sirva.
Saludos, desde Argentina, Esteban.

*--------------------------------------------------------------------------
Bueno Amigo Gracias por tu respuesta,
me gustaria preguntarte si con ese metodo la imagen se acomoda en el monotor a las distintas resoluciones?
Tenia un arreglo con pero al hacerla la ventana mdi desaparecio la imagen.

Gracias de antemano por tu ayuda

Jairo Barbosa
jaba
 
Posts: 109
Joined: Tue Dec 12, 2006 12:39 am
Location: CALI COLOMBIA

Postby jrestojeda » Mon Nov 24, 2008 5:48 pm

No amigo, la imagen no se adapta a distintas resoluciones.
Yo eso lo soluciono con diferentes Brush.

Code: Select all  Expand view
ResH:=oWnd:nHorzRes()
ResV:=oWnd:nVertRes()

IF ResH=800 .AND. ResV=600
   SET BRUSH OF oWnd TO oBrush1
ELSE
   IF ResH=1024 .AND. ResV=768
      SET BRUSH OF oWnd TO oBrush2
   ENDIF
ENDIF


oBrush1 y oBrush2 son dos imágenes distintas con los tamaños ya preestablecidos.
En el IF Solo está para dos resoluciones pero puedes poner las que quieras, no se si es la mejor forma, pero es la forma en la que yo resuelvo este tema.

Espero te sirva.
Saludos.
User avatar
jrestojeda
 
Posts: 593
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Poner imagen en MDI

Postby FranciscoA » Mon Nov 24, 2008 8:07 pm

jaba wrote:Saludos para el Foro

Alguien me puede indicar como coloco una imagen en una ventana MDI

Cordialmente

Jairo Barbosa



Yo lo hago de la manera siguiente. Espero te sirva.

Function Main()
local oBmp

DEFINE BITMAP oBmp file ".\MiBmp.bmp"
...
...
oWnd:bPainted := { | hDC | PongaBmp( hDC , oBmp , oWnd ) }

ACTIVATE WINDOW oWnd MAXIMIZED

oBmp:End()
SET RESOURCES TO
Return nil

//-----------------------------------------//FWH
STATIC FUNCTION PongaBmp( hDC, oBmp, oWnd ) //BmpTiled(
local nWidth := oWnd:nWidth(), nHeight := oWnd:nHeight()
local nRow := 0, nCol := 0, n
local nBmpWidth := oBmp:nWidth(), nBmpHeight := oBmp:nHeight()

if oBmp:hBitmap == 0
return nil
endif

while nRow < nHeight
nCol = 0
while nCol < nWidth
PalBmpDraw( hDC, nRow, nCol, oBmp:hBitmap )
nCol += nBmpWidth
end
nRow += nBmpHeight
end
return nil


Saludos
Francisco J. Alegria P.
User avatar
FranciscoA
 
Posts: 2114
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Poner imagen en MDI

Postby jaba » Mon Nov 24, 2008 9:11 pm

FranciscoA wrote:
jaba wrote:Saludos para el Foro

Alguien me puede indicar como coloco una imagen en una ventana MDI

Cordialmente

Jairo Barbosa



Yo lo hago de la manera siguiente. Espero te sirva.

Function Main()
local oBmp

DEFINE BITMAP oBmp file ".\MiBmp.bmp"
...
...
oWnd:bPainted := { | hDC | PongaBmp( hDC , oBmp , oWnd ) }

ACTIVATE WINDOW oWnd MAXIMIZED

oBmp:End()
SET RESOURCES TO
Return nil

//-----------------------------------------//FWH
STATIC FUNCTION PongaBmp( hDC, oBmp, oWnd ) //BmpTiled(
local nWidth := oWnd:nWidth(), nHeight := oWnd:nHeight()
local nRow := 0, nCol := 0, n
local nBmpWidth := oBmp:nWidth(), nBmpHeight := oBmp:nHeight()

if oBmp:hBitmap == 0
return nil
endif

while nRow < nHeight
nCol = 0
while nCol < nWidth
PalBmpDraw( hDC, nRow, nCol, oBmp:hBitmap )
nCol += nBmpWidth
end
nRow += nBmpHeight
end
return nil


Saludos
Francisco J. Alegria P.


Jrestojeda , Francisco

Gracias lo estoy probando

Cordialmente

Jairo Barbosa
jaba
 
Posts: 109
Joined: Tue Dec 12, 2006 12:39 am
Location: CALI COLOMBIA


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 54 guests