How to code TScrDlg() for use in folder?

How to code TScrDlg() for use in folder?

Postby hua » Fri Nov 25, 2022 4:26 am

Hi,
All samples I've looked at place calls to TScrDlg() at a dialog's ON INIT.
How should it be coded for use in a Folder/FolderEx?

TIA
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
 
Posts: 1038
Joined: Fri Oct 28, 2005 2:27 am

Re: How to code TScrDlg() for use in folder?

Postby hua » Fri Nov 25, 2022 8:38 am

Tried
Code: Select all  Expand view
     
::oFolder:aDialogs[1]:bInit := {||  oScrDlg := TScrDlg():New(::oFolder:aDialogs[1],0,270,0,70) }                                           
 


Why :bInit is not evaluated?
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
 
Posts: 1038
Joined: Fri Oct 28, 2005 2:27 am

Re: How to code TScrDlg() for use in folder?

Postby hua » Fri Nov 25, 2022 9:37 am

What's better between TScrDlg() and TScrollPanel?
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
 
Posts: 1038
Joined: Fri Oct 28, 2005 2:27 am

Re: How to code TScrDlg() for use in folder?

Postby hua » Fri Nov 25, 2022 10:21 am

Resolved.
Code: Select all  Expand view
ACTIVATE DIALOG oDlg ON INIT MakeScroll(oFolder)

PROC MakeScroll(oFolder)
  local oScrDlg
  oScrDlg := TScrDlg():New(oFolder:aDialogs[1],0,SCROLL_RANGE,0,70)
  oFolder:aDialogs[1]:bMouseWheel := { | nKey, nDelta, nXPos, nYPos | MouseWheel( nKey, nDelta, nXPos, nYPos, oScrDlg ) }
RETURN
 
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
 
Posts: 1038
Joined: Fri Oct 28, 2005 2:27 am

Re: How to code TScrDlg() for use in folder?

Postby Antonio Linares » Fri Nov 25, 2022 12:10 pm

very good! :-)

many thanks for sharing it!
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: How to code TScrDlg() for use in folder?

Postby hua » Wed Nov 30, 2022 7:04 am

When I added up to 10 RTF controls within the same page on the TFolderEx,
the screen painting starts to become weird and folder names got painted where it shouldn't exist.

How to fix this?

Image
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
 
Posts: 1038
Joined: Fri Oct 28, 2005 2:27 am

Re: How to code TScrDlg() for use in folder?

Postby Antonio Linares » Wed Nov 30, 2022 9:39 am

Dear Hua,

Could you please provide us your PRG example to test it here ?

many thanks
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: How to code TScrDlg() for use in folder?

Postby hua » Thu Dec 01, 2022 10:11 am

Hi Antonio,
I created a self-contained sample. It can be downloaded from here https://drive.google.com/file/d/1aBL3nn ... share_link
The paths in the .mak file would need to be updated first though

TIA
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
 
Posts: 1038
Joined: Fri Oct 28, 2005 2:27 am

Re: How to code TScrDlg() for use in folder?

Postby Antonio Linares » Thu Dec 01, 2022 12:06 pm

Dear Hua,

I have been able to build you example and see wht you mean

Please try to reduce the height used by TScrDlg()
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: How to code TScrDlg() for use in folder?

Postby hua » Fri Dec 02, 2022 9:40 am

No joy.

Antonio Linares wrote:Please try to reduce the height used by TScrDlg()


I reduced the controls from 10 to 7 sets. Seems painting issue is consistent.
There will be extra bits painted near the 5th, 7th and 10th TTitle

Image
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
 
Posts: 1038
Joined: Fri Oct 28, 2005 2:27 am

Re: How to code TScrDlg() for use in folder?

Postby Antonio Linares » Fri Dec 02, 2022 10:21 am

Please try to reduce the height of TScrDlg(), let the controls as they are
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: How to code TScrDlg() for use in folder?

Postby hua » Thu Dec 15, 2022 9:26 am

Workaround the issue by not using Shadow
Code: Select all  Expand view
 REDEFINE TITLE oTitle ID 123 of oDlg SHADOW NOSHADOW
 


hua wrote:No joy.

Antonio Linares wrote:Please try to reduce the height used by TScrDlg()


I reduced the controls from 10 to 7 sets. Seems painting issue is consistent.
There will be extra bits painted near the 5th, 7th and 10th TTitle
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
 
Posts: 1038
Joined: Fri Oct 28, 2005 2:27 am

Re: How to code TScrDlg() for use in folder?

Postby Antonio Linares » Thu Dec 15, 2022 10:32 am

very good :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: Rick Lipkin and 85 guests