Page 1 of 1

BTNBMP transparent

Posted: Thu May 31, 2007 6:29 am
by camelot
Hi,
i have some btnbmp on folder with xp style.
Have anyone a solution to get Btnbmp transparent.

i use FWH 7.01 and Harbour alpha build 1.0

Thanks in advance.
Uwe

Posted: Thu May 31, 2007 6:39 am
by Antonio Linares

Posted: Thu May 31, 2007 8:45 am
by camelot
Antonio,

your sample do not work.

for example my sourcecode:
The oBtn is not transparent now.

DEFINE DIALOG oAuf:oDlgAuf RESOURCE "Aufmsk0" ICON oIauf

REDEFINE FOLDER oAuf:oFauf ID 100 OF oAuf:oDlgauf ;
ITEMS " Auftrags&kopf ", " Auftrags&positionen " ;
DIALOGS "Aufmsk1", "Aufmsk2";

REDEFINE BTNBMP oBtn ID 123 noborder;
RESOURCE "suchen1","","suchen11" OF ::oFauf:aDialogs[1]
WHEN ::lNeu .AND. ! ::lNeuAppend ;
ACTION (Msgstop())

Image

regards
Uwe

Posted: Thu May 31, 2007 7:25 pm
by carlos.mora
Read again the code that Antonio refered you, detailed. Your code does not reflects the Antonio advice. Pay attention and read it again, I´m sure the answer is there.

Regards,

Carlos

Posted: Thu May 31, 2007 7:54 pm
by Antonio Linares
You are missing this:

DEFINE DIALOG oDlg ... TRANSPARENT

...

oBtn:lTransparent = .T.

Posted: Fri Jun 01, 2007 8:22 am
by camelot
Hi,

I have changed my code to the following, but it takes no effect. The BTNBMP are not transparent. Is the problem maybe in the resourceeditor,i use Visual c++ 6.0 or must i have a specially backround color for the bitmap that is in the resourceeditor?

DEFINE DIALOG oDlgAuf RESOURCE "Aufmsk0" ICON oIauf TRANSPARENT

REDEFINE FOLDER oFauf ID 100 OF oDlgauf ;
ITEMS " Auftrags&kopf ", " Auftrags&positionen " ;
DIALOGS "Aufmsk1", "Aufmsk2";

REDEFINE BTNBMP oBtn ID 156 noborder;
RESOURCE "AKONTO1","","AKONTO11" OF ::oFauf:aDialogs[1] ;
ACTION (Msgstop());
TOOLTIP "A-Kontobetrag" ;
MESSAGE "A-Kontobetrag bearbeiten"

oBtn:ltransparent = .T.

Thanks in advance.
Uwe

Posted: Fri Jun 01, 2007 8:35 am
by Antonio Linares
Please test this sample:

Code: Select all

#include "FiveWin.ch"

function Main()

   local oDlg, oBtn

   DEFINE DIALOG oDlg TRANSPARENT

   @ 10, 10 BTNBMP oBtn FILENAME "About.bmp" NOBORDER 
   
   oBtn:lTransparent = .T.

   ACTIVATE DIALOG oDlg

return nil

Posted: Fri Jun 01, 2007 9:11 am
by camelot
Antonio,

your sample works fine,but my BTNBMP is not not on a dialog but also on a Folder.

regards
Uwe

Posted: Fri Jun 01, 2007 9:40 am
by Antonio Linares
Then try this:

oFolder:aDialogs[ n ]:lTransparent = .T.

Posted: Fri Jun 01, 2007 11:04 am
by camelot
Antonio,

sorry, but no effect.
The Folder is in the Resourceeditor declared as SysTabControl32.
The BTNBMP on the Dialog are OK.
Do you have an other idea.

regards,
Uwe

Posted: Fri Jun 01, 2007 11:19 am
by Antonio Linares
Uwe,

You may use a Class TButtonBmp object instead of a TBtnBmp one, as TButtonBmp uses the XP themes and will look better

Please review samples\TestBuBm.prg