FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Poner imagen en MDI
Posts: 109
Joined: Tue Dec 12, 2006 12:39 AM
Poner imagen en MDI
Posted: Mon Nov 24, 2008 04:16 PM

Saludos para el Foro

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

Cordialmente

Jairo Barbosa

Posts: 601
Joined: Wed Jul 04, 2007 03:51 PM
Poner imagen en MDI
Posted: Mon Nov 24, 2008 05:06 PM
Hola amigo.
Prueba lo siguiente:
DEFINE BRUSH oBrush1 RESOURCE "IMAGEN" // Defines la imagen


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.
Ojeda Esteban Eduardo.

Buenos Aires - Argentina.

FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport

Skype: jreduojeda
Posts: 109
Joined: Tue Dec 12, 2006 12:39 AM
Poner imagen en MDI
Posted: Mon Nov 24, 2008 05:23 PM
jrestojeda wrote:Hola amigo.
Prueba lo siguiente:
DEFINE BRUSH oBrush1 RESOURCE "IMAGEN" // Defines la imagen


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
Posts: 601
Joined: Wed Jul 04, 2007 03:51 PM
Poner imagen en MDI
Posted: Mon Nov 24, 2008 05:48 PM
No amigo, la imagen no se adapta a distintas resoluciones.
Yo eso lo soluciono con diferentes Brush.

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.
Ojeda Esteban Eduardo.

Buenos Aires - Argentina.

FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport

Skype: jreduojeda
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Poner imagen en MDI
Posted: Mon Nov 24, 2008 08: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.
Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 109
Joined: Tue Dec 12, 2006 12:39 AM
Re: Poner imagen en MDI
Posted: Mon Nov 24, 2008 09: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

Continue the discussion