FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour a TBitmap behind of a TBitmap?
Posts: 445
Joined: Thu Feb 21, 2008 11:58 AM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 12:20 AM

How do put a object TBitmap on top of another. And the first be transparent... without it being shown the "square" of the object?

Something like a overlap effect with transparency!!

Peace and lighting!

JĂșlio CĂ©sar M. Ferreira

FWH 8.10 / xHB 1.1.0 / xDevStudio 0.72 / Pelles C 5.0.1 / SQLLIB 1.9
Posts: 6983
Joined: Fri Oct 07, 2005 07:07 PM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 05:35 AM
bmponbmp.prg from the FIVEWIN samples




#include "FiveWin.ch"

FUNC main()

local oWnd, oBmp, oBmp1, hBitmap

DEFINE WINDOW oWnd TITLE "Bitmap on a bitmap"

hBitmap := ReadBitmap( 0, "..\bitmaps\book.bmp" )

@ 1, 1 BITMAP oBmp FILENAME "..\bitmaps\magic.bmp" OF oWnd

oBmp:bPainted = { || PaintTransparent( oBmp:hDC, hBitmap ),;
SetBkMode( oBmp:hDC, 1 ),;
SetTextColor( oBmp:hDC, CLR_YELLOW ),;
TextOut( oBmp:hDC, 5, 5, "Hello" ) }

ACTIVATE WINDOW oWnd

DeleteObject( hBitmap )

RETURN NIL

function PaintTransparent( hDC, hBitmap )

local hBmpOld := SelectObject( hDC, hBitmap )
local nZeroZeroClr := GetPixel( hDC, 0, 0 )
local nOldClr

SelectObject( hDC, hBmpOld )
nOldClr = SetBkColor( hDC, nRGB( 255, 255, 255 ) )
TransBmp( hBitmap, nBmpWidth( hBitmap ), nBmpHeight( hBitmap ),;
nZeroZeroClr, hDC, 10, 20, nBmpWidth( hBitmap ), nBmpHeight( hBitmap ) )
SetBkColor( hDC, nOldClr )

return nil


Posts: 445
Joined: Thu Feb 21, 2008 11:58 AM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 12:38 PM

Otto...

the function TransBmp() not exists in my source!!

Peace and lighting!

JĂșlio CĂ©sar M. Ferreira

FWH 8.10 / xHB 1.1.0 / xDevStudio 0.72 / Pelles C 5.0.1 / SQLLIB 1.9
Posts: 445
Joined: Thu Feb 21, 2008 11:58 AM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 12:59 PM
How I can make the background of image of "theater masks" transparent?

Peace and lighting!

JĂșlio CĂ©sar M. Ferreira

FWH 8.10 / xHB 1.1.0 / xDevStudio 0.72 / Pelles C 5.0.1 / SQLLIB 1.9
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 01:45 PM

Julio,

You need to use TransBmp(). It is included in FWH.

What FWH version are you using ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 445
Joined: Thu Feb 21, 2008 11:58 AM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 01:49 PM
Antonio Linares wrote:Julio,

You need to use TransBmp(). It is included in FWH.

What FWH version are you using ?



Hi Linares... my version of fivewin is 2.26
I don't found this function there! :-)
Peace and lighting!

JĂșlio CĂ©sar M. Ferreira

FWH 8.10 / xHB 1.1.0 / xDevStudio 0.72 / Pelles C 5.0.1 / SQLLIB 1.9
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 01:52 PM

Julio,

You need to upgrade FWH

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 654
Joined: Fri Oct 21, 2005 05:54 AM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 02:25 PM
Mr.Julio,

Try this code.

FUNCTION PaintBmp(oDlg, cFileRes, nRow, nCol)

LOCAL aBmpPal, hBitmap

IF FILE(cFileRes)
   * This Code is for reading bitmap file from disk file
   aBmpPal = PalBmpRead(oDlg:hDC, cFileRes )
ELSE
   * This Code is for reading bitmap file resource
   aBmpPal = PalBmpLoad( cFileRes )
ENDIF

hBitmap = aBmpPal[ 1 ]

DrawMasked( oDlg:hDC, hBitmap, nRow, nCol )

RETURN nil


and you will get the desired effect

Regards,

- Ramesh Babu P
Posts: 3107
Joined: Fri Oct 07, 2005 06:28 PM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 03:35 PM

Dear jc,
You need My TTitleBar class but it is a beta class perhaps I send it to antonio at the end of the next week

Best Regards, Saludos



Falconi Silvio
Posts: 445
Joined: Thu Feb 21, 2008 11:58 AM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 03:48 PM

Silvio... please, send to me too the class!

Ramesh, I have try!

Peace and lighting!

JĂșlio CĂ©sar M. Ferreira

FWH 8.10 / xHB 1.1.0 / xDevStudio 0.72 / Pelles C 5.0.1 / SQLLIB 1.9
Posts: 445
Joined: Thu Feb 21, 2008 11:58 AM
a TBitmap behind of a TBitmap?
Posted: Fri Mar 07, 2008 03:53 PM
RAMESHBABU wrote:Mr.Julio,

Try this code.

FUNCTION PaintBmp(oDlg, cFileRes, nRow, nCol)

LOCAL aBmpPal, hBitmap

IF FILE(cFileRes)
   * This Code is for reading bitmap file from disk file
   aBmpPal = PalBmpRead(oDlg:hDC, cFileRes )
ELSE
   * This Code is for reading bitmap file resource
   aBmpPal = PalBmpLoad( cFileRes )
ENDIF

hBitmap = aBmpPal[ 1 ]

DrawMasked( oDlg:hDC, hBitmap, nRow, nCol )

RETURN nil


and you will get the desired effect

Regards,

- Ramesh Babu P



Ramesh, thanks for your help but, not works!
Peace and lighting!

JĂșlio CĂ©sar M. Ferreira

FWH 8.10 / xHB 1.1.0 / xDevStudio 0.72 / Pelles C 5.0.1 / SQLLIB 1.9
Posts: 654
Joined: Fri Oct 21, 2005 05:54 AM
a TBitmap behind of a TBitmap?
Posted: Sat Mar 08, 2008 04:38 PM
Mr.Julio,


How did you paint the Title Bar ?. It is through any gradiation function or
a bitmap?

Can you post your code here for the dialog shown. I will try to solve it.

This is resulted output using the above function posted by me.



The dialog background is painted using gradition function (not a bitmap)
and the title bar is a bitmap and the picture painted on the titlebar bitmap
is a bitmap.


- Ramesh Babu P
Posts: 782
Joined: Wed Dec 19, 2007 07:50 AM
a TBitmap behind of a TBitmap?
Posted: Sun Mar 09, 2008 06:00 PM
Hi Julio:

Why don't you try with TSButton ?, it's very simple...

Here using the same fwh sample with a dialog
#include "FiveWin.ch" 
#include "TsButton.ch" 

FUNC main() 

   local oWnd, oBmp, oBmp1, hBitmap

   DEFINE DIALOG oWnd TITLE "Bitmap on a bitmap" COLOR CLR_BLACK, CLR_CYAN

   setbkmode( ownd:hdc, 1 )
   @ 1, 1 BITMAP oBmp FILENAME "..\bitmaps\magic1.bmp" OF oWnd NOBORDER TRANSPARENT

   @20,10 SBUTTON OF oWnd FILENAME "..\bitmaps\book.bmp" SIZE 10, 20 PIXEL BITMAP

   ACTIVATE DIALOG oWnd

   DeleteObject( hBitmap )

RETURN NIL

Regards

Manuel Mercado
manuelmercado at prodigy dot net dot mx
Posts: 445
Joined: Thu Feb 21, 2008 11:58 AM
a TBitmap behind of a TBitmap?
Posted: Mon Mar 10, 2008 11:58 AM
Antonio Linares wrote:Julio,

You need to upgrade FWH


Linares, sorry but I informed to you a wrong version of my fivewin... really, the version is 2.6 of 2005.

But, I still doesn't have a transbmp function :-)
Peace and lighting!

JĂșlio CĂ©sar M. Ferreira

FWH 8.10 / xHB 1.1.0 / xDevStudio 0.72 / Pelles C 5.0.1 / SQLLIB 1.9
Posts: 445
Joined: Thu Feb 21, 2008 11:58 AM
a TBitmap behind of a TBitmap?
Posted: Mon Mar 10, 2008 12:01 PM
mmercado wrote:Hi Julio:

Why don't you try with TSButton ?, it's very simple...

Here using the same fwh sample with a dialog
#include "FiveWin.ch" 
#include "TsButton.ch" 

FUNC main() 

   local oWnd, oBmp, oBmp1, hBitmap

   DEFINE DIALOG oWnd TITLE "Bitmap on a bitmap" COLOR CLR_BLACK, CLR_CYAN

   setbkmode( ownd:hdc, 1 )
   @ 1, 1 BITMAP oBmp FILENAME "..\bitmaps\magic1.bmp" OF oWnd NOBORDER TRANSPARENT

   @20,10 SBUTTON OF oWnd FILENAME "..\bitmaps\book.bmp" SIZE 10, 20 PIXEL BITMAP

   ACTIVATE DIALOG oWnd

   DeleteObject( hBitmap )

RETURN NIL

Regards

Manuel Mercado


Hello Manuel Mercado...

Really, I don't understand you about the TsButton... I want other thing! the image of "theater masks" stay transparent, for the background appear! More less this!
Peace and lighting!

JĂșlio CĂ©sar M. Ferreira

FWH 8.10 / xHB 1.1.0 / xDevStudio 0.72 / Pelles C 5.0.1 / SQLLIB 1.9