87:
I can not reach the Maximum value I set. What can be the problem
PROCEDURE OnChanging(oScrollBar,OldValue,NewValue)
	oScrollBar:ToolTipText := Transform(NewValue,"")
RETURN

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Changing := {|OldValue,NewValue| OnChanging(oScrollBar,OldValue,NewValue)} /*Occurs when the value of the control is about to change.*/

		oScrollBar:IgnoreLargeChange := .T.
		oScrollBar:Maximum := 128
		oScrollBar:Value := 128

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
86:
How do I use the RenderType property

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:SetProperty("Background",260/*exVSThumb*/,0x1000000)
		oScrollBar:VisualAppearance():RenderType := 1073742079

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
85:
How can I make a spin control

PROCEDURE OnChange(oScrollBar)
	DevOut( "Change" )
	DevOut( Transform(oScrollBar:Value(),"") )
RETURN

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Change := {|| OnChange(oScrollBar)} /*Occurs when the value of the control is changed.*/

		oScrollBar:ThumbSize := 0

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
84:
How can I change the tooltip's border using your EBN files with a different color

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:SetProperty("Background",64/*exToolTipAppearance*/,0x100ffa0)
		oScrollBar:ToolTipText := "This is just a text that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
83:
Can I change the color for the control's border

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:Appearance := 16777471/*0x10000f8+Bump+Sunken*/

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
82:
How do I change the control's border, using your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:Appearance := 16777216/*0x1000000+*/

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
81:
How can I change the visual appearance of the right button usign your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Mode := 1/*exHorizontal*/
		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oScrollBar:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
		oScrollBar:SetProperty("Background",392/*exHSRight*/,0x1000000)
		oScrollBar:SetProperty("Background",393/*exHSRightP*/,0x2000000)
		oScrollBar:SetProperty("Background",394/*exHSRightD*/,0x1000000)
		oScrollBar:SetProperty("Background",395/*exHSRightH*/,0x3000000)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
80:
How can I change the visual appearance of the thumb usign your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Mode := 1/*exHorizontal*/
		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oScrollBar:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
		oScrollBar:SetProperty("Background",388/*exHSThumb*/,0x1000000)
		oScrollBar:SetProperty("Background",389/*exHSThumbP*/,0x2000000)
		oScrollBar:SetProperty("Background",390/*exHSThumbD*/,0x1000000)
		oScrollBar:SetProperty("Background",391/*exHSThumbH*/,0x3000000)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
79:
How can I change the visual appearance of the left button usign your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Mode := 1/*exHorizontal*/
		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oScrollBar:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
		oScrollBar:SetProperty("Background",384/*exHSLeft*/,0x1000000)
		oScrollBar:SetProperty("Background",385/*exHSLeftP*/,0x2000000)
		oScrollBar:SetProperty("Background",386/*exHSLeftD*/,0x1000000)
		oScrollBar:SetProperty("Background",387/*exHSLeftH*/,0x3000000)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
78:
How can I change the visual appearance for all buttons usign your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Mode := 1/*exHorizontal*/
		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oScrollBar:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
		oScrollBar:SetProperty("Background",324/*exSBtn*/,0x1000000)
		oScrollBar:SetProperty("Background",325/*exSBtnP*/,0x2000000)
		oScrollBar:SetProperty("Background",326/*exSBtnD*/,0x1000000)
		oScrollBar:SetProperty("Background",327/*exSBtnH*/,0x3000000)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
77:
How can I change the visual appearance of the down button usign your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oScrollBar:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
		oScrollBar:SetProperty("Background",264/*exVSDown*/,0x1000000)
		oScrollBar:SetProperty("Background",265/*exVSDownP*/,0x2000000)
		oScrollBar:SetProperty("Background",266/*exVSDownD*/,0x1000000)
		oScrollBar:SetProperty("Background",267/*exVSDownH*/,0x3000000)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
76:
How can I change the visual appearance of the thumb usign your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oScrollBar:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
		oScrollBar:SetProperty("Background",260/*exVSThumb*/,0x1000000)
		oScrollBar:SetProperty("Background",261/*exVSThumbP*/,0x2000000)
		oScrollBar:SetProperty("Background",262/*exVSThumbD*/,0x1000000)
		oScrollBar:SetProperty("Background",263/*exVSThumbH*/,0x3000000)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
75:
How can I change the visual appearance of the up button usign your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oScrollBar:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
		oScrollBar:SetProperty("Background",256/*exVSUp*/,0x1000000)
		oScrollBar:SetProperty("Background",257/*exVSUpP*/,0x2000000)
		oScrollBar:SetProperty("Background",258/*exVSUpD*/,0x1000000)
		oScrollBar:SetProperty("Background",259/*exVSUpH*/,0x3000000)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
74:
How can I change the visual appearance for all buttons usign your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oScrollBar:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
		oScrollBar:SetProperty("Background",324/*exSBtn*/,0x1000000)
		oScrollBar:SetProperty("Background",325/*exSBtnP*/,0x2000000)
		oScrollBar:SetProperty("Background",326/*exSBtnD*/,0x1000000)
		oScrollBar:SetProperty("Background",327/*exSBtnH*/,0x3000000)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
73:
Can I indent the caption in the button or part

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img>thumb indented by 20 pixels and moved up by 5 pixels")
		oScrollBar:SetProperty("CaptionAlignment",256/*exThumbPart*/,0/*LeftAlignment*/)
		oScrollBar:SetProperty("CaptionIndentX",256/*exThumbPart*/,20)
		oScrollBar:SetProperty("CaptionIndentY",256/*exThumbPart*/,-5)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
72:
Can I indent the caption in the button or part

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img>thumb indented by 20 pixels")
		oScrollBar:SetProperty("CaptionAlignment",256/*exThumbPart*/,0/*LeftAlignment*/)
		oScrollBar:SetProperty("CaptionIndentX",256/*exThumbPart*/,20)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
71:
Can i specify to ignore the large change value when getting the maximum value
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:IgnoreLargeChange := .T.

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
70:
Is there any way to specify the order of the buttons/parts

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:OrderParts := "l,r,t"
		oScrollBar:Value := 15

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
69:
Does your control support owner draw feature
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("OwnerDrawPart",256/*exThumbPart*/,.T.)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
68:
Can I assing any extra data to a button or part of the control
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("UserData",256/*exThumbPart*/,"This is just some extra data assigned to the control's thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
67:
How can I specify the size of the thumb

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("HTMLPicture","p1","c:\exontrol\images\zipdisk.gif")
		oScrollBar:SetProperty("HTMLPicture","p2","c:\exontrol\images\auction.gif")
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>p1</img> thumb <img>p2</img>")
		oScrollBar:ThumbSize := 48

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
66:
Is there any property to disable the up or down button, as a disable when there is no scroll

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:DisableNoScroll := .T.

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
65:
Is there any property to disable the up or down button, so user can't click it

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("EnablePart",64/*exRightBPart*/,.F.)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
64:
Is there any property to disable the up or down button, so user can't click it

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:DisableNoScroll := .T.

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
63:
Can I change the tooltip's border using your EBN files

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oScrollBar:SetProperty("Background",64/*exToolTipAppearance*/,0x1000000)
		oScrollBar:ToolTipText := "This is just a text that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
62:
Can I change the tooltip's background color

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:ToolTipText := "This is <bgcolor=FF0000>just a text</bgcolor> that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
61:
Can I change the tooltip's background color

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Background",65/*exToolTipBackColor*/,AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,0 } )  , .F. ))
		oScrollBar:ToolTipText := "This is just a text that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
60:
Can I change the tooltip's foreground color

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:ToolTipText := "This is <fgcolor=FF0000>just a text</fgcolor> that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
59:
Can I change the tooltip's foreground color

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Background",66/*exToolTipForeColor*/,AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,0 } )  , .F. ))
		oScrollBar:ToolTipText := "This is just a text that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
58:
Can I change the tooltip's width

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:BeginUpdate()
		oScrollBar:ToolTipWidth := 256
		oScrollBar:ToolTipText := "This is <font Tahoma;12>just a text with a different font</font> that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43
		oScrollBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
57:
Can I change the tooltip's font

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:BeginUpdate()
		oScrollBar:ToolTipTitle := "Title"
		oScrollBar:ToolTipText := "This is <font Tahoma;12>just a text with a different font</font> that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43
		oScrollBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
56:
Can I change the tooltip's font

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar
	LOCAL f

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:BeginUpdate()
		f := CreateObject("StdFont")
			f:Name := "Tahoma"
			f:Size := 12
		oScrollBar:ToolTipFont := f
		oScrollBar:ToolTipTitle := "Title"
		oScrollBar:ToolTipText := "This is just a text that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43
		oScrollBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
55:
Can I display a tooltip when user clicks the thumb and drags it to a new position

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:ToolTipTitle := "Title"
		oScrollBar:ToolTipText := "This is just a text that's displayed when the user clicks and drags the thumb to a new position"
		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
54:
Is there any function to specify the size/width of the buttons

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Mode := 1/*exHorizontal*/
		oScrollBar:BtnWidth := 32

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
53:
Is there any function to specify the size/height of the buttons

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:BtnHeight := 32

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
52:
How do scroll to a specified position
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Value := 10

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
51:
How do scroll to a specified position
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Scroll(4/*exScrollToPosition*/,10)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
50:
How do simulate clicking the down button
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Scroll(1/*exScrollRight*/,0)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
49:
I am using your control in a C++ application, and I would preffer handle messages instead events
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SendMessage := .T.

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
48:
How can I get the value from the cursor
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar
	LOCAL var_ValueFromPoint

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		var_ValueFromPoint := oScrollBar:ValueFromPoint(-1,-1)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
47:
Is there any function to identify the part from the cursor
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar
	LOCAL var_PartFromPoint

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		var_PartFromPoint := oScrollBar:PartFromPoint(-1,-1)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
46:
Is there any option to specify the value to be added or subtracted when user presses the contro's background
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:LargeChange := 20

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
45:
Is there any option to specify the value to be added or subtracted when user presses the up or down button
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SmallChange := 5

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
44:
How do I specify the maxmimum value in the control
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Maximum := 95
		oScrollBar:Value := 90

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
43:
How do I specify the minimum value in the control
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Minimum := 5
		oScrollBar:Value := 7

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
42:
How do I change control's position
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
41:
How do I change the position of the thumb
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Value := 43

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
40:
How do I enable or disable a button or a part of the control

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("VisiblePart",32768/*exLeftB1Part*/,.T.)
		oScrollBar:SetProperty("EnablePart",32768/*exLeftB1Part*/,.F.)
		oScrollBar:SetProperty("Caption",32768/*exLeftB1Part*/,"<img>0</img><fgcolor=808080>extra button</fgcolor>")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
39:
How do show or hide buttons in the control

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("VisiblePart",32768/*exLeftB1Part*/,.T.)
		oScrollBar:SetProperty("Caption",32768/*exLeftB1Part*/,"<img>0</img>extra button")
		oScrollBar:SetProperty("VisiblePart",1/*exRightB6Part*/,.T.)
		oScrollBar:SetProperty("Caption",1/*exRightB6Part*/,"<img>0</img>extra button")
		oScrollBar:SetProperty("VisiblePart",2/*exRightB5Part*/,.T.)
		oScrollBar:SetProperty("Caption",2/*exRightB5Part*/,"<img>0</img>extra button")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
38:
How do I arrange the control horizontally

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Mode := 1/*exHorizontal*/

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
37:
How do I prevent painting the control when I perform several changes

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:BeginUpdate()
		oScrollBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oScrollBar:SetProperty("HTMLPicture","p1","c:\exontrol\images\zipdisk.gif")
		oScrollBar:SetProperty("HTMLPicture","p2","c:\exontrol\images\auction.gif")
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>p1</img> thumb <img>p2</img> ... <img>1</img> icon")
		oScrollBar:ThumbSize := 48
		oScrollBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
36:
How do I add icons

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>1</img>thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
35:
How do I change the caption for the extra button I added
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("VisiblePart",32768/*exLeftB1Part*/,.T.)
		oScrollBar:SetProperty("Caption",32768/*exLeftB1Part*/,"<img>0</img>extra button")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
34:
How can I align the caption to the right

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img>thumb right")
		oScrollBar:SetProperty("CaptionAlignment",256/*exThumbPart*/,2/*RightAlignment*/)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
33:
How can I align the caption to the left

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img> thumb left")
		oScrollBar:SetProperty("CaptionAlignment",256/*exThumbPart*/,0/*LeftAlignment*/)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
32:
How can show the caption using a different font

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"<img>0</img><font Tahoma;12>upper</font> part")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"<img>0</img><font ;4>lower</font> part")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
31:
Is there any option to display icons or pictures in the parts of the control

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oScrollBar:SetProperty("HTMLPicture","p1","c:\exontrol\images\zipdisk.gif")
		oScrollBar:SetProperty("HTMLPicture","p2","c:\exontrol\images\auction.gif")
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>p1</img> thumb <img>p2</img> ... <img>1</img> icon")
		oScrollBar:ThumbSize := 48

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
30:
Is there any option to display icons or pictures in the parts of the control

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("HTMLPicture","p1","c:\exontrol\images\zipdisk.gif")
		oScrollBar:SetProperty("HTMLPicture","p2","c:\exontrol\images\auction.gif")
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>p1</img> thumb <img>p2</img>")
		oScrollBar:ThumbSize := 48

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
29:
Is there any option to display icons or pictures in the parts of the control

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>1</img> thumb <img>2</img>")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
28:
Is there any option to display icons or pictures in the parts of the control

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>1:4</img><img>1:4</img><img>1:4</img><img>1</img>thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
27:
Is there any option to display icons or pictures in the parts of the control

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>1</img>thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
26:
How can paint the caption using multiple lines

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img>line1<br>line2")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
25:
How can change the background color for a portion of text

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"<img>0</img><bgcolor=FF0000><fgcolor=0000FF>upper</fgcolor></bgcolor> part")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"<img>0</img><bgcolor=0000FF><fgcolor=FF0000>upper</fgcolor></bgcolor> part")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
24:
How can change the foreground color for a portion of text

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"<img>0</img><fgcolor=FF0000>upper</fgcolor> part")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"<img>0</img><fgcolor=0000FF>upper</fgcolor> part")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
23:
How can show the caption as strikeout

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar
	LOCAL f

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		f := CreateObject("StdFont")
			f:Name := "Tahoma"
			f:Size := 12
		oScrollBar:Font := f
		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"<img>0</img><s>upper</s> part")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"<img>0</img><s>lower</s> part")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
22:
How can underline a portion of the caption

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar
	LOCAL f

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		f := CreateObject("StdFont")
			f:Name := "Tahoma"
			f:Size := 12
		oScrollBar:Font := f
		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"<img>0</img><u>upper</u> part")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"<img>0</img><u>lower</u> part")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
21:
How can I draw in italic a portion of the caption

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar
	LOCAL f

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		f := CreateObject("StdFont")
			f:Name := "Tahoma"
			f:Size := 12
		oScrollBar:Font := f
		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"<img>0</img><i>upper</i> part")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"<img>0</img><i>lower</i> part")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
20:
How can I draw in bold a portion of the caption

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar
	LOCAL f

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		f := CreateObject("StdFont")
			f:Name := "Tahoma"
			f:Size := 12
		oScrollBar:Font := f
		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"<img>0</img><b>upper</b> part")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"<img>0</img><b>lower</b> part")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
19:
How can I put a text on the background part in the lower or upper , horizontally

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"<img>0</img>upper")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"<img>0</img>lower")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
18:
How can I put a text on the background part in the lower or upper side

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",512/*exLowerBackPart*/,"upper")
		oScrollBar:SetProperty("Caption",128/*exUpperBackPart*/,"lower")
		oScrollBar:Value := 45

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
17:
How can I put a text on the background part, horizontally

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",640/*exBackgroundPart*/,"<img>0</img>background")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
16:
How can I put a text on the background part

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",640/*exBackgroundPart*/,"background")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
15:
How can I put a text on the thumb, horizontally

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img>thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
14:
How can I put a text on the thumb

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
13:
How can I disable the control
#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Enabled := .F.

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
12:
How do I put a picture on the center of the control

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Picture := oScrollBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oScrollBar:PictureDisplay := 17/*MiddleCenter*/
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)
		oScrollBar:SetProperty("BackColor",0x80000004)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
11:
How do I resize/stretch a picture on the control's background

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Picture := oScrollBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oScrollBar:PictureDisplay := 49/*Stretch*/
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)
		oScrollBar:SetProperty("BackColor",0x80000004)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
10:
How do I put a picture on the control's center right bottom side

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Picture := oScrollBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oScrollBar:PictureDisplay := 34/*LowerRight*/
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)
		oScrollBar:SetProperty("BackColor",0x80000004)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
9:
How do I put a picture on the control's center left bottom side

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Picture := oScrollBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oScrollBar:PictureDisplay := 32/*LowerLeft*/
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)
		oScrollBar:SetProperty("BackColor",0x80000004)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
8:
How do I put a picture on the control's center top side

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Picture := oScrollBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oScrollBar:PictureDisplay := 1/*UpperCenter*/
		oScrollBar:Value := 50
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)
		oScrollBar:SetProperty("BackColor",0x80000004)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
7:
How do I put a picture on the control's right top corner

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Picture := oScrollBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oScrollBar:PictureDisplay := 2/*UpperRight*/
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)
		oScrollBar:SetProperty("BackColor",0x80000004)
		oScrollBar:Value := 50

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
6:
How do I put a picture on the control's left top corner

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Picture := oScrollBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oScrollBar:PictureDisplay := 0/*UpperLeft*/
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)
		oScrollBar:SetProperty("BackColor",0x80000004)
		oScrollBar:Value := 50

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
5:
How do I put a picture on the control's background

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Picture := oScrollBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)
		oScrollBar:SetProperty("BackColor",0x80000004)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
4:
How can I change the size of control's font

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Font():Size := 12
		oScrollBar:SetProperty("ForeColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,0 } )  , .F. ))
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img>thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
3:
How do I change the control's font

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:Font():Name := "Tahoma"
		oScrollBar:SetProperty("ForeColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,0 } )  , .F. ))
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img>thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
2:
How can I change the control's foreground color

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("ForeColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,0 } )  , .F. ))
		oScrollBar:SetProperty("Caption",256/*exThumbPart*/,"<img>0</img>thumb")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
1:
How can I change the control's background color

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oScrollBar

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oScrollBar := XbpActiveXControl():new( oForm:drawingArea )
	oScrollBar:CLSID  := "Exontrol.ScrollBar.1" /*{5DE2B956-5AB5-47EE-8225-6AB7F9B4FC18}*/
	oScrollBar:create(,, {10,60},{610,370} )

		oScrollBar:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor  ( { 0,255,0 } )  , .F. ))
		oScrollBar:SetProperty("VisiblePart",640/*exBackgroundPart*/,.F.)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN