xBrowse color

Post Reply
Willy
Posts: 117
Joined: Thu Mar 02, 2006 11:06 am
Location: Belgium

xBrowse color

Post by Willy »

Hello,

I am converting to xBrowse.

How can I change the color of the place below the rows if there are less rows than fit in the browse.

Thanks,

Willy
StefanHaupt
Posts: 824
Joined: Thu Oct 13, 2005 7:39 am
Location: Germany

Post by StefanHaupt »

Willi,

try oBrw:SetColor (<nFore>,<nBack>)
kind regards
Stefan
Willy
Posts: 117
Joined: Thu Mar 02, 2006 11:06 am
Location: Belgium

Post by Willy »

Sorry but this does not work.

Only the background of the lines is set.

I want the whole panel colored if there are few lines in the browse.

Example. The brwose has place for 25 lines.

In the beginning there are only 2 records added.

I want that the place below those lines is also colored.

Thanks for the reply Stefan.

Willy
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Willy,

Class TXBrowse Method Paint() makes this call:

FillRect( ::hDC, GetClientRect( ::hWnd ), ::oBrush:hBrush )

so it should fill all its entire surface
regards, saludos

Antonio Linares
www.fivetechsoft.com
Willy
Posts: 117
Joined: Thu Mar 02, 2006 11:06 am
Location: Belgium

Post by Willy »

Thanks Antonio,

Indeed that line paints the area but when the rows are painted it is overwritten in a blank area.

I Think this is done in the dispend method of the Windows Class.

Is this browse painted correctly in your screens.

I use the xbrowse in a dialog and nog in a window. Could that make a difference.

I do some more tests.

Thanks,

Willy.
Willy
Posts: 117
Joined: Thu Mar 02, 2006 11:06 am
Location: Belgium

Post by Willy »

Antonio,

Is this still a problem everywhere.

Is it possible to paint the whole area in a specified color or am I the first who want to try it.

Thanks,

Willy
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Willy,

Are you able to reproduce the bug using samples\TestXBrw.prg ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
Willy
Posts: 117
Joined: Thu Mar 02, 2006 11:06 am
Location: Belgium

Post by Willy »

Antonio,

I tried the testxBrowse program.

I think I found something.

The whole panel is not colored when you use a dialog with resources.

That is exactly what I do in my tests.

In the other screens the screen is paited correctly.

I use Workshop for all my screens. So it is important for me.

Greetings,

Willy
Willy
Posts: 117
Joined: Thu Mar 02, 2006 11:06 am
Location: Belgium

Post by Willy »

Anyone ?
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Willy,

Sorry, we have been busy and couldn't test it. We are going to review it asap
regards, saludos

Antonio Linares
www.fivetechsoft.com
Willy
Posts: 117
Joined: Thu Mar 02, 2006 11:06 am
Location: Belgium

Post by Willy »

OK
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Willy,

We have modified samples\TestXBrw.prg this way and these are our first results:

Code: Select all

STATIC FUNCTION NewDialog( oWnd )

   local oDlg, oBrw

   DEFINE DIALOG oDlg RESOURCE "TEST" OF oWnd

   oBrw := TXBrowse():New( oWnd )

   oBrw:CreateFromResource( 101 )

   oBrw:SetArray( { { "first", "row" }, { "second", "row" } } )
   oBrw:aCols[ 1 ]:cHeader = "An array"
   oBrw:aCols[ 2 ]:cHeader = "test"
   oBrw:aCols[ 1 ]:bClrStd = { || { CLR_WHITE, CLR_BLUE } } 
   oBrw:aCols[ 2 ]:bClrStd = { || { CLR_WHITE, CLR_BLUE } } 

   ACTIVATE DIALOG oDlg ;
      ON INIT oBrw:SetColor( CLR_WHITE, CLR_BLUE )

RETURN NIL
Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
Willy
Posts: 117
Joined: Thu Mar 02, 2006 11:06 am
Location: Belgium

Post by Willy »

This is doing the job.

Thanks Antonio.
Post Reply