103
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ImageSize := 32
		oStatusBar:Font():Size := 16
		oStatusBar:Images("gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOqNUqdPq9VrFWrlbr1QpdhAFAkFis1ntFptVrtkrpszrNvmVxqk3uVtm1kmF3sdBvF/wGBmV+j9BYGHwWJulfxdax2NyFdx2JlV6l9Nw7AAGZymdz2Cy2GxErvWcz9ivlwyV21cuxugwktzGIzmvwtl0+53U5y0a0Wazmmyu/3dCyOMyXHx/J5nIr9q3uyqnBxFN3G46ma4vb7mD2Ng4nZze00fDkHC7t7us2rOX5tguetpHRlmz4HVqnXk1PjHO+CMPo9MBMC+j2vC8j7wS8cFNI4kBo05UIvfCT/NsnsApU+0Fqg/T+oy/kPxC0sEQfErKQK96+w28UWRI8UGvO8sTLS9r2PWmsMJTDTask3CsIbIEQRA3shOXEEAO/GclJ9" +;
		"FEKrrA8FRbKMXRIlb0JxCkjS1LMswhCcvuel0cv26cSMa8Ufx+2sQwhEUoSXOCjSbLcnxjKc7sdKUVyq28NtVI71P9P7JxtQEapjQ6fzfM8zPfNE2PhIsLL63E40slk5y7N89LcyU9SvMb3SdUc6VJLj5VLVLfO/PS9KzNFHUa/0XyBD0dxlS9cxhMlTRSoNXypPErWDPyfNS+MwprRNO0FD8wVVZ1AI08URwVRjtJ1WCn21QkkUrXVLVPQS/XIkFgTxT9iONZ9xVTdq+L1eKg3kkF6Upe68XtfV51/MtrVjBlwYFL1ev8y1/P6/lyzzYl02wntj0RVFmS1Qa+M5as93QxEUW9e993rfmQ2+vy65M/mL1lhl/2bj2ByVduMtNhCJT9hdz41nN14Ld12Z9UjfI/oUAaGseiw6+uFLLhcVabJOS5RqOE0BHlZ5VnEr5fOMs3st+aa/bbRzrJGV51Y0b0DbqaWXZD90hIsPbjWu52+6Wyadpe66hhO+P/Xi" +;
		"oW5rD8ZbrUZuVg6n1dsE/cXmewu1m9PVwnd35/nueXho/NaJzmjc61W76esuT77eG8pTquy9TwWH8LEzG8RDfFalx3Gcfvna9rvG/cptGLd9tuI6TZOP5Fiqi99vea+X4VRcBq/JZZtVQ9cwSs5lsXE372+a9z7PbfB3VVqHyvMctLto8uob6eV0m/cD6MN2v+T33t6sBut42vdv2bJ8a997x2maFJfK+qArbGJPEKE+1qTflMsIdW/GCJX17KcT6/czr/X+u1g29B7j/4BQfWkkx4zIHisjhPCmE0K4SwtXM+d4BvHRwNZOoBph9IJvPek9d40FoMJxf691jj2ywQQcHEWET4XJwkTszlVqm2GokewxtBT1DpQjRxDN0rUVDNKdC3lb6tzNOwh6upMSSYfv4YBCl/bsn9PxiFCEo7SI6Obc9HeOrnY8x4jtHtdpN4GRbaorhsbu18Pph5CiHymI0RpSXGJ/z2oUOxYxG858AyiI+bfJtuTcG5yelBJy" +;
		"T8okhqFd4a5yxL0rvulYtKCsZiWxWkc1s1cRoxxwhA31DLE0mR9l9HqX8fJgTDmFMVH0MIsRzVYnwnMi1dyzmhLt2kS2pxIiU62Wj5ptQGlSYFakLonTUJNLKaM5WzlffEkuFkk5wTrhVO2eE7G6lJhxFFYUZ55zmn0WuBCD4pzhirFCKkbomsOoIYmZx5p90LoYWGPdD5g0QmJRKYxbZ6zYoVQ2jVGylSak7KSkFH6RSjpHKFuU+YMyNo5SulkC6I0vonTCitMXPoEpVS2H5FQfEqp2R1opIgAEkJISYARTCukOhmPNI5Ex/wzGHUsicMwA1LHgQ90Y/KpoQHAD+pB/R4NzIaMAB9Xaw1gqaAOsh/A/ptIkWUfhGK1kZH8RgH5GqvgArqRmt4AAPrTroRofBGADkqr6Rmu4D7CEaHARiwpJrEEZsXXwlVjyMWRsaRqwdkLGNBABZmytmyMnaINZqyVpLR2ftKAAAdd6h2osbaskdiq4EZtgSmyNcbVW" +;
		"RJNXe3AA7REar3b0stlAAXBtoRmvJGLjEYAHUWsFcwCD/rnaop9aEICMAPdK5hT6xpeuzdOtAgKuJeGfdq6ggEbkTvAP+p9UCHXrvKkcgIA==")
		oStatusBar:VisualAppearance():Add(4,"gBFLBCJwBAEHhEJAAEhABNgCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDEAkRRdDSOYDmGQYDiCIoRShOMaTVJ8bQ2ASEaAmWK3boUAJFPrFc6ABJMZRRISXJABeKwRoGJYaUhRdDRNCIZBqEqua7iEZRQqCCZkWZPNTRVScByhF61IDpWjKLDKJJwXBMcxyBL0NRxFTAKawGoYbq0AJQVTQcZPVhgAYYfSlMDuMYqPrCUoJYZiIAZVbuHYbR6LbBtEAKeyOaJjWTEMhSBSGDYzPDLMilOi9Lj+awAYZsEZ0XieKzjXDbcy3HatBhyYrGaZqNj8VDVX5vVrMNzhF5/FAAZUH+ZBxIkRAkiAaQxh0DonCMLAeBKKoGBCCY+HiUJaBIKIEmaM4AACRBcmmKpdAiRBCCCd5wDQGgGEEYBUBYBIgEAOAPAOAI4CQCICkAUDkgCIQHBEGwJkKAIcCI" +;
		"CJCDecAeH+AYgFoHoBAEIA6CKAhAjgLAIAEYoIEGdxugKSI0CeC5dHiRgygyYxIlYMxGkMGJkC2CxjGidg+g2EYwlwNgNiOEJGD+EZkgQbA7RySQIDaEglAidQbBAZRAnIS4UGWCJOCoRYEHEGBHBCBARAoWYYl0QAaCkAJQCEMBNBMRB5jYZIYkCGZEAaGYAAESh2hqRJZj4WQDI2MAJx/MICh2BQpmoWAEACcA+H0A1gHqDoggWGgaFEBQBDAUoIAQAABhKGgXmiahKFABgqAAToiAABoqhaGgZCmaQgByKpBgAXZ0BwKwBi6JYqGQcIECECAqjAcAAB2K5BkaMYpimMR8F8FhsEEUBTBUBJRDgTQSESEQgEIEJEDCeA9A+A4QmAOAMm3HYvAuAorHQJY3kIgwhAAB5LhaPAdkcCp6jIGoGFuNpCjCbBRFAVATi8SwwEmNAtBCeA+jWLRwlANALnACx0CroJQACa4KyCgI=")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3"
		oStatusBar:Panel(1):Text := "<img>1</img>"
		oStatusBar:Panel(2):Text := "<img>2</img>"
		oStatusBar:Panel(3):Text := "<img>3</img>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
102
ImageSize property on 16 (default) (specifies the size of control' icons)

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ImageSize := 16
		oStatusBar:Images("gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOqdSqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVttmp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8acvQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtT" +;
		"GsbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgPnwD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg==")
		oStatusBar:VisualAppearance():Add(4,"gBFLBCJwBAEHhEJAAEhABNgCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDEAkRRdDSOYDmGQYDiCIoRShOMaTVJ8bQ2ASEaAmWK3boUAJFPrFc6ABJMZRRISXJABeKwRoGJYaUhRdDRNCIZBqEqua7iEZRQqCCZkWZPNTRVScByhF61IDpWjKLDKJJwXBMcxyBL0NRxFTAKawGoYbq0AJQVTQcZPVhgAYYfSlMDuMYqPrCUoJYZiIAZVbuHYbR6LbBtEAKeyOaJjWTEMhSBSGDYzPDLMilOi9Lj+awAYZsEZ0XieKzjXDbcy3HatBhyYrGaZqNj8VDVX5vVrMNzhF5/FAAZUH+ZBxIkRAkiAaQxh0DonCMLAeBKKoGBCCY+HiUJaBIKIEmaM4AACRBcmmKpdAiRBCCCd5wDQGgGEEYBUBYBIgEAOAPAOAI4CQCICkAUDkgCIQHBEGwJkKAIcCI" +;
		"CJCDecAeH+AYgFoHoBAEIA6CKAhAjgLAIAEYoIEGdxugKSI0CeC5dHiRgygyYxIlYMxGkMGJkC2CxjGidg+g2EYwlwNgNiOEJGD+EZkgQbA7RySQIDaEglAidQbBAZRAnIS4UGWCJOCoRYEHEGBHBCBARAoWYYl0QAaCkAJQCEMBNBMRB5jYZIYkCGZEAaGYAAESh2hqRJZj4WQDI2MAJx/MICh2BQpmoWAEACcA+H0A1gHqDoggWGgaFEBQBDAUoIAQAABhKGgXmiahKFABgqAAToiAABoqhaGgZCmaQgByKpBgAXZ0BwKwBi6JYqGQcIECECAqjAcAAB2K5BkaMYpimMR8F8FhsEEUBTBUBJRDgTQSESEQgEIEJEDCeA9A+A4QmAOAMm3HYvAuAorHQJY3kIgwhAAB5LhaPAdkcCp6jIGoGFuNpCjCbBRFAVATi8SwwEmNAtBCeA+jWLRwlANALnACx0CroJQACa4KyCgI=")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3"
		oStatusBar:Panel(1):Text := "<img>1</img>"
		oStatusBar:Panel(2):Text := "<img>2</img>"
		oStatusBar:Panel(3):Text := "<img>3</img>"
		oStatusBar:EndUpdate()

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

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel,oPanel1,oPanel2
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Format := "1,2,3"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:BackgroundExt := "bottom[10,pattern=6,back=RGB(255,0,0),text=`<font ;6><img>alert</img><b>Alert!`,align=0x11]"
		oPanel1 := oStatusBar:Panel(2)
			oPanel1:Text := "Panel 2"
			oPanel1:BackgroundExt := "bottom[20,back=RGB(128,0,0),text=`<fgcolor FFFFFF><img>alert</img><b>Alert!`,align=0x11]"
		oPanel2 := oStatusBar:Panel(3)
			oPanel2:Text := "Panel 3"
			oPanel2:BackgroundExt := "bottom[30,back=RGB(64,0,0),text=`<font ;12><fgcolor FFFFFF><img>alert</img><b>Alert!`,align=0x11]"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
100
How do I access the properties and the methods of an inner ActiveX control to a panel

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oAppearance
	LOCAL oCalendar
	LOCAL oPanel,oPanel1
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oAppearance := oStatusBar:VisualAppearance()
			oAppearance:Add(4,"c:\exontrol\images\border.ebn")
			oAppearance:Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(24;5/6)"
		oPanel := oStatusBar:Panel(1)
			oPanel:ControlID := "MSCAL.Calendar"
			oCalendar := oPanel:Object()
				oCalendar:MonthLength := 0
				oCalendar:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,255,255 } )  , .F. ))
		oPanel1 := oStatusBar:Panel(5)
			oPanel1:Text := "<fgcolor=FFFFFF><img>1</img>75%</fgcolor>"
			oPanel1:Alignment := 16/*exAlignMiddleLeft*/
			oPanel1:Percent := 75
			oPanel1:Transparency := 35
			oPanel1:Offset := "4 2 -4 -2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
99
How do I insert an ActiveX control to a panel

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oAppearance
	LOCAL oPanel
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oAppearance := oStatusBar:VisualAppearance()
			oAppearance:Add(4,"c:\exontrol\images\border.ebn")
			oAppearance:Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(24;5/6)"
		oStatusBar:Panel(1):ControlID := "MSChart20Lib.MSChart"
		oStatusBar:Panel(2):ControlID := "MSCAL.Calendar"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "<fgcolor=FFFFFF><img>1</img>75%</fgcolor>"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
			oPanel:Percent := 75
			oPanel:Transparency := 35
			oPanel:Offset := "4 2 -4 -2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
98
How can I show the percent value over the progress bar using a semi-transparent color

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oAppearance
	LOCAL oPanel
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oAppearance := oStatusBar:VisualAppearance()
			oAppearance:Add(4,"c:\exontrol\images\border.ebn")
			oAppearance:Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(24;5/6)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "<fgcolor=FFFFFF><img>1</img>75%</fgcolor>"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
			oPanel:Percent := 75
			oPanel:Transparency := 35
			oPanel:Offset := "4 2 -4 -2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
97
How can I control the padding of the percent/progressbar control

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oAppearance
	LOCAL oPanel
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oAppearance := oStatusBar:VisualAppearance()
			oAppearance:Add(4,"c:\exontrol\images\border.ebn")
			oAppearance:Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(24;5/6)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "15%"
			oPanel:Percent := 15
			oPanel:OffsetPercent := "6 6 -6 -6"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
96
Can I change the visual appearance of the percent or a progress-bar inside the panel

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oAppearance
	LOCAL oPanel
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oAppearance := oStatusBar:VisualAppearance()
			oAppearance:Add(1,"c:\exontrol\images\normal.ebn")
			oAppearance:Add(4,"c:\exontrol\images\border.ebn")
			oAppearance:Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(24;5/6)"
		oPanel := oStatusBar:Panel(5)
			oPanel:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,255,255 } )  , .F. ))
			oPanel:Text := "15%"
			oPanel:Percent := 15
			oPanel:SetProperty("BackColorPercent",0x1000000)
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
95
Can I change the visual appearance of the percent or a progress-bar inside the panel

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oAppearance
	LOCAL oPanel
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oAppearance := oStatusBar:VisualAppearance()
			oAppearance:Add(1,"gBFLBCJwBAEHhEJAEGg8GhiAADACAxRDAMgBQKAAzQFAYbhrBaERhGIYYJhUAIIRZGMIjFDcEwxDSMQJjaCRQh+JYkR6MQCSBJkMw5AaXYrlWJoMjKA4nTbKMjRfKcWRjGKeJ5kOaZIhuJgCUJLM70HRMExqGQaRJpeoZVDUMJSQjVVYUbDVFwHIKkZzoWhJQiKXIuRzXdKzLYVSABA6xbLiWrpWqebQAThbdD3FC1aTBISpaztepKZpeVaGXxcdo3LTlbzzOC3MRva7MOjqJJIYjMGJ3fLuA49QrBKymWJcYwyGgIQiBdKaK7+WgBVp/YqjeL9IgMUBpGKdBynlzGHzeQiQRK8BDIbQSFCEdpADSrKBiFioZjXGwbBaXJ4ujOdY2D2Do3FeOZbmmdx6HAECAg==")
			oAppearance:Add(4,"c:\exontrol\images\border.ebn")
			oAppearance:Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(24;5/6)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "<fgcolor=FFFFFF><img>1</img>75%</fgcolor>"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
			oPanel:Percent := 75
			oPanel:Transparency := 35
			oPanel:Offset := "4 2 -4 -2"
			oPanel:SetProperty("BackColorPercent",0x1000000)
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
94
How can I change the color of the percent or a progress-bar inside the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(24;5/6)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "15%"
			oPanel:Percent := 15
			oPanel:SetProperty("BackColorPercent",AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,0 } )  , .F. ))
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
93
How can I display a percent or a progress-bar inside the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(24;5/6)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "15%"
			oPanel:Percent := 15
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
92
Is there any property to get the width/height of the panel

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel,oPanel1
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(5/6)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := Transform(oPanel:Width(),"")
		oPanel1 := oStatusBar:Panel(6)
			oPanel1:Text := Transform(oPanel1:Height(),"")
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
91
How can I disable a panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(5/6)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "Disabled"
			oPanel:Enabled := .F.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
90
How can I assign an extra data to my panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(5/6/7/8)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "UserData"
			oPanel:UserData := "this is just some extra data associated to the panel"
			oPanel:ToolTipText := Transform(oPanel:UserData(),"")
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
89
Is there any option to draw myself the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2,(5/6/7/8)"
		oPanel := oStatusBar:Panel(5)
			oPanel:Text := "OwnerDraw"
			oPanel:OwnerDraw := .T.
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
88
How can I assign a tooltip to a panel

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel,oPanel1,oPanel2
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:ToolTipWidth := 364
		oStatusBar:Format := "1/2/3"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oPanel1 := oStatusBar:Panel(2)
			oPanel1:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel1:ToolTipText := oPanel1:Text()
			oPanel1:ToolTipTitle := "Title"
			oPanel1:Alignment := 16/*exAlignMiddleLeft*/
		oPanel2 := oStatusBar:Panel(3)
			oPanel2:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel2:ToolTipText := oPanel2:Text()
			oPanel2:ToolTipTitle := "Title"
			oPanel2:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
87
How can I assign an icon/image to a panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Panel(1):Image := 1
		oStatusBar:Panel(6):Image := 2
		oStatusBar:Panel(8):Image := 3
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
86
How can I get the index of the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Appearance := 0/*None2*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
85
How can I get the index of the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Appearance := 0/*None2*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Panel(1):Text := Transform(oStatusBar:Panel(1):Index(),"")
		oStatusBar:EndUpdate()

	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 panel's visual appearance using EBN files

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Appearance := 0/*None2*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
83
How can I change the panel's visual appearance using EBN files

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oAppearance
	LOCAL oPanel,oPanel1
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oAppearance := oStatusBar:VisualAppearance()
			oAppearance:Add(3,"c:\exontrol\images\normal.ebn")
			oAppearance:Add(4,"c:\exontrol\images\pushed.ebn")
			oAppearance:Add(1,"CP:3 2 2 -2 -2")
			oAppearance:Add(2,"CP:4 2 2 -2 -2")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:SetProperty("BackColor",0x1000000)
		oPanel1 := oStatusBar:Panel(2)
			oPanel1:Text := "Panel 2"
			oPanel1:SetProperty("BackColor",0x2000000)
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
82
How can I change the panel's visual appearance using EBN files

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel,oPanel1
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oStatusBar:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "" + CHR(34) + "" + CHR(34) + ":4,((4;" + CHR(34) + "" + CHR(34) + "/1/4;" + CHR(34) + "" + CHR(34) + ")," + CHR(34) + "" + CHR(34) + ":4,(4;" + CHR(34) + "" + CHR(34) + "/2/4;" + CHR(34) + "" + CHR(34) + "))," + CHR(34) + "" + CHR(34) + ":4"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:SetProperty("BackColor",0x1000000)
		oPanel1 := oStatusBar:Panel(2)
			oPanel1:Text := "Panel 2"
			oPanel1:SetProperty("BackColor",0x2000000)
		oStatusBar:EndUpdate()

	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 panel's background color

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel,oPanel1
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Format := "" + CHR(34) + "" + CHR(34) + ":4,((4;" + CHR(34) + "" + CHR(34) + "/1/4;" + CHR(34) + "" + CHR(34) + ")," + CHR(34) + "" + CHR(34) + ":4,(4;" + CHR(34) + "" + CHR(34) + "/2/4;" + CHR(34) + "" + CHR(34) + "))," + CHR(34) + "" + CHR(34) + ":4"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,255,0 } )  , .F. ))
		oPanel1 := oStatusBar:Panel(2)
			oPanel1:Text := "Panel 2"
			oPanel1:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,255 } )  , .F. ))
		oStatusBar:EndUpdate()

	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 caption's foreground color

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel,var_Panel
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1:48/2"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:SetProperty("ForeColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,255,0 } )  , .F. ))
		var_Panel := oStatusBar:Panel(2)
			var_Panel:Text := "Panel 2"
			var_Panel:SetProperty("ForeColor",AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,255 } )  , .F. ))
		oStatusBar:EndUpdate()

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

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:StrikeOut := .T.
		oStatusBar:Panel(2):Text := "<s>Panel</s> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
78
How can I underline the caption in the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:Underline := .T.
		oStatusBar:Panel(2):Text := "<u>Panel</u> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
77
How can I show in italic a specified panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:Italic := .T.
		oStatusBar:Panel(2):Text := "<i>Panel</i> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
76
How can I show in bold a specified panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Panel 1"
			oPanel:Bold := .T.
		oStatusBar:Panel(2):Text := "<b>Panel</b> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
75
How do I control the padding on the left, top or other sides

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Debug := .T.
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2/(3,4)"
		oPanel := oStatusBar:Panel(3)
			oPanel:Text := "Arrange the panels as you want using CRD strings"
			oPanel:Alignment := 0/*exAlignTopLeft*/
			oPanel:ToolTipText := oPanel:Text()
			oPanel:Offset := "10 10 -10 -10"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
74
How can I display the panel using a single line

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Debug := .T.
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2/(3,4)"
		oPanel := oStatusBar:Panel(3)
			oPanel:Text := "Arrange the panels as you want using CRD strings"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:WordWrap := .F.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
73
How can I align the text inside the panel

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel,oPanel1,oPanel2,oPanel3,oPanel4,oPanel5,oPanel6,oPanel7,oPanel8
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "(0/16/32),(1/17/33),(2/18/34)"
		oPanel := oStatusBar:Panel(0)
			oPanel:Text := "exAlignTopLeft"
			oPanel:Alignment := 0/*exAlignTopLeft*/
		oPanel1 := oStatusBar:Panel(1)
			oPanel1:Text := "exAlignTopCenter"
			oPanel1:Alignment := 1/*exAlignTopCenter*/
		oPanel2 := oStatusBar:Panel(2)
			oPanel2:Text := "exAlignTopRight"
			oPanel2:Alignment := 2/*exAlignTopRight*/
		oPanel3 := oStatusBar:Panel(16)
			oPanel3:Text := "exAlignMiddleLeft"
			oPanel3:Alignment := 16/*exAlignMiddleLeft*/
		oPanel4 := oStatusBar:Panel(17)
			oPanel4:Text := "exAlignMiddleCenter"
			oPanel4:Alignment := 17/*exAlignMiddleCenter*/
		oPanel5 := oStatusBar:Panel(18)
			oPanel5:Text := "exAlignMiddleRight"
			oPanel5:Alignment := 18/*exAlignMiddleRight*/
		oPanel6 := oStatusBar:Panel(32)
			oPanel6:Text := "exAlignBottomLeft"
			oPanel6:Alignment := 32/*exAlignBottomLeft*/
		oPanel7 := oStatusBar:Panel(33)
			oPanel7:Text := "exAlignBottomCenter"
			oPanel7:Alignment := 33/*exAlignBottomCenter*/
		oPanel8 := oStatusBar:Panel(34)
			oPanel8:Text := "exAlignBottomRight"
			oPanel8:Alignment := 34/*exAlignBottomRight*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
72
How can I display the <b> in the panel's caption

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1"
		oStatusBar:Panel(1):Text := "<b>Bold</b>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
71
How can I insert anchors or hyperlinks

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "Link <a1>1</a>"
		oStatusBar:Panel(2):Text := "<a2>Link 2</a>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
70
How can I change the font for a panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "<font Tahoma>Panel 1</font>"
		oStatusBar:Panel(2):Text := "<font System>Panel 2</font>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
69
Is there any option to display the text using different fonts

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "Panel <font Tahoma;20>1</font>"
		oStatusBar:Panel(2):Text := "Panel <font Tahoma;16>2</font>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
68
Is there any option to insert custom size pictures in the text

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("HTMLPicture","pic1","c:\exontrol\images\zipdisk.gif")
		oStatusBar:SetProperty("HTMLPicture","pic2","c:\exontrol\images\auction.gif")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "Panel 1<img>pic1</img>"
		oStatusBar:Panel(2):Text := "Panel <img>pic2</img> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
67
Is there any option to insert icons in the text

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "Panel 1<img>1</img>"
		oStatusBar:Panel(2):Text := "<img>2</img>Panel 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
66
How do I show the panel's caption using multiple lines

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "Panel 1<br>Line 1<br>Line2"
		oStatusBar:Panel(2):Text := "<bgcolor=FFFF00>Panel</bgcolor> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
65
How do I show a portion of the text using a different background color

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "<bgcolor=FF0000>Panel</bgcolor> 1"
		oStatusBar:Panel(2):Text := "<bgcolor=FFFF00>Panel</bgcolor> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
64
How do I show a portion of the text in a different color

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "<fgcolor=FF0000>Panel</fgcolor> 1"
		oStatusBar:Panel(2):Text := "<fgcolor=FFFF00>Panel</fgcolor> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
63
How do I show a portion of the text as italic in the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "<i>Panel</i> 1"
		oStatusBar:Panel(2):Text := "<i>Panel</i> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
62
How do I show a portion of the text as strikeout in the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "<s>Panel</s> 1"
		oStatusBar:Panel(2):Text := "<s>Panel</s> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
61
How do I underline a portion of the text in the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "<u>Panel</u> 1"
		oStatusBar:Panel(2):Text := "<u>Panel</u> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
60
How do I bold a portion of the text in the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "<b>Panel</b> 1"
		oStatusBar:Panel(2):Text := "<b>Panel</b> 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
59
How do I assign a caption or a text to a panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Format := "1/2"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
58
How do I access properties and methods of the panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1010/2020"
		oPanel := oStatusBar:Panel(1010)
			oPanel:Text := "Panel 1"
			oPanel:Bold := .T.
		oStatusBar:Panel(2020):Text := "Panel 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
57
How do I clear the panels

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1/2/48;(3,4:48)"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:Panel(3):Text := "Panel 3"
		oStatusBar:Panel(4):Text := "Panel 4"
		oStatusBar:ClearPanels()
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
56
How can I add or arrange the panels in the status bar control

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oAppearance
	LOCAL oPanel,oPanel1
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Format := "" + CHR(34) + "<a1>link</a>" + CHR(34) + "[a=17]:64,11:64,((24;21/" + CHR(34) + "Arrange the panels as you want using CRD strings" + CHR(34) + "[a=17][ww])/24;3),(33/44):48"
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oAppearance := oStatusBar:VisualAppearance()
			oAppearance:Add(1,"c:\exontrol\images\border.ebn")
			oAppearance:Add(2,"c:\exontrol\images\border.ebn")
			oAppearance:Add(3,"CP:2 1 1 -1 -1")
		oStatusBar:Appearance := 0/*None2*/
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:SetProperty("BackColorPanels",0x3000000)
		oStatusBar:Panel(11):Text := "Panel <b>1</b>"
		oPanel := oStatusBar:Panel(3)
			oPanel:Transparency := 50
			oPanel:Text := "<img>1</img>75%"
			oPanel:Percent := 75
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
			oPanel:Offset := "4 4 -4 -4"
			oPanel:OffsetPercent := oPanel:Offset()
			oPanel:SetProperty("BackColorPercent",0x1000000)
		oStatusBar:Panel(21):Image := 1
		oPanel1 := oStatusBar:Panel(33)
			oPanel1:Text := "Panel 3"
			oPanel1:Bold := .T.
			oPanel1:Enabled := .F.
		oStatusBar:Panel(44):Text := "Panel 4"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
55
How can I add three panels aligned from top to bottom, and the last divided in two panels

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1/2/48;(3,4:48)"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:Panel(3):Text := "Panel 3"
		oStatusBar:Panel(4):Text := "Panel 4"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
54
How can I add three panels aligned from top to bottom

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1/2/3"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:Panel(3):Text := "Panel 3"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
53
How can I add two panels to the status bar control, first aligned to the left, the second aligned to the right, and in the middle some text

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("BackColor",0x8000000f)
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1:64," + CHR(34) + "<img>1</img> just text and so on ..." + CHR(34) + "[a=17],2:96"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
52
How can I add two panels to the status bar control, first aligned to the left, the second aligned to the right

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1:64," + CHR(34) + "" + CHR(34) + ",2:96"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
51
How can I add two panels to the status bar control, so the first has a specified width

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1:64,2"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
50
How can I add two panels to the status bar control, so the second has a specified width

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2:64"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
49
How can I add two panels to the status bar control

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
48
How do I add one panel to the status bar control

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 2 2 -2 -2")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
47
How do I arrange the panels in the status bar

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Debug := .T.
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\hot.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 2 2 -2 -2")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "" + CHR(34) + "<a1>link</a>" + CHR(34) + "[a=17]:64,11:64,((24;21/" + CHR(34) + "Arrange the panels as you want using CRD strings" + CHR(34) + "[a=17][ww])/24;3),(33/44):48"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
46
How do I arrange the panels in the status bar

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Debug := .T.
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\pushed.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 2 2 -2 -2")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2:32,(3/4/5)"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
45
How do I arrange the panels in the status bar

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Debug := .T.
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\normal.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 2 2 -2 -2")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,(3/4/5)"
		oStatusBar:EndUpdate()

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		p := oStatusBar:PanelFromPoint(-1,-1)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
43
How do I draw a border for all panels

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Debug := .T.
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\normal.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 2 2 -2 -2")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,(3/4/5)"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
42
How do I draw a border for all panels

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 2 2 -2 -2")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Debug := .T.
		oStatusBar:Format := "(0/1:32),2,(3/4/5)"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
41
Is there any option to display the identifiers of the panels

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Debug := .T.
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3"
		oStatusBar:Panel(1):Text := "Panel 1"
		oStatusBar:Panel(2):Text := "Panel 2"
		oStatusBar:Panel(3):Text := "Panel 3"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
40
Can I get the anchor from the point so I can display a tooltip
#include "AppEvent.ch"
#include "ActiveX.ch"

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3"
		oStatusBar:Panel(1):Text := "<a1>link 1</a>"
		oStatusBar:Panel(2):Text := "<a2>link 2</a>"
		oStatusBar:Panel(3):Text := "<a3>link 3</a>"
		oStatusBar:ShowToolTip(oStatusBar:AnchorFromPoint(-1,-1))
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
39
Can I change the visual effect, appearance for the anchor, hyperlink elements, in HTML captions, after the user clicks it

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("FormatAnchor",.F.,"<b><u><fgcolor=880000> </fgcolor></u></b>")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3"
		oStatusBar:Panel(1):Text := "<a1>link 1</a>"
		oStatusBar:Panel(2):Text := "<a2>link 2</a>"
		oStatusBar:Panel(3):Text := "<a3>link 3</a>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
38
Can I change the visual effect, appearance for the anchor, hyperlink elements, in HTML captions

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("FormatAnchor",.T.,"<b><u><fgcolor=FF0000> </fgcolor></u></b>")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3"
		oStatusBar:Panel(1):Text := "<a1>link 1</a>"
		oStatusBar:Panel(2):Text := "<a2>link 2</a>"
		oStatusBar:Panel(3):Text := "<a3>link 3</a>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
37
Can I displays a custom size picture to panels

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:SetProperty("HTMLPicture","pic1","c:\exontrol\images\zipdisk.gif")
		oStatusBar:Format := "1,2,3,4"
		oStatusBar:Panel(1):Text := "<img>pic1</img>"
		oStatusBar:EndUpdate()

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:ShowToolTip("This is a bit of text that should appear when ShowToolTip method is called.")

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
35
I've seen that the width of the tooltip is variable. Can I make it larger

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:ToolTipWidth := 426
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
34
How do I call your x-script language

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:Debug := .T.
		oStatusBar:Format := "1"
		oStatusBar:ExecuteTemplate("Panel(1)"):Text := "this is called through ExecuteTemplate property"

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
33
How do I call your x-script language

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:Template := "BackColor = RGB(255,0,0)"

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
32
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 oPanel
	LOCAL oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Enabled := .F.
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Panel(1):Image := 1
		oStatusBar:Panel(2):Text := "<img>1:4</img><img>1:4</img><img>1:4</img><img>1</img> icons"
		oPanel := oStatusBar:Panel(3)
			oPanel:Text := "<img>2</img>"
			oPanel:Alignment := 18/*exAlignMiddleRight*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
31
How do I let the tooltip being displayed longer

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:ToolTipPopDelay := 10000
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

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

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oStatusBar:SetProperty("Background",64/*exToolTipAppearance*/,0x1000000)
		oStatusBar:SetProperty("Background",65/*exToolTipBackColor*/,AutomationTranslateColor( GraMakeRGBColor  ( { 246,245,240 } )  , .F. ))
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

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

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:SetProperty("Background",65/*exToolTipBackColor*/,AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,0 } )  , .F. ))
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Drag the cursor hover so the tooltip shows up"
			oPanel:ToolTipText := "<font Tahoma;11>T</font>his is an HTML <b>tooltip</b> assigned to a panel"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
28
Does the tooltip support HTML format

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "Drag the cursor hover so the tooltip shows up"
			oPanel:ToolTipText := "<font Tahoma;11>T</font>his is an HTML <b>tooltip</b> assigned to a <fgcolor=FF0000>panel</fgcolor>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
27
Can I change the forecolor for the tooltip

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:SetProperty("Background",66/*exToolTipForeColor*/,AutomationTranslateColor( GraMakeRGBColor  ( { 255,0,0 } )  , .F. ))
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

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

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel
	LOCAL oStatusBar
	LOCAL oStdFont

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStdFont := oStatusBar:ToolTipFont()
			oStdFont:Name := "Tahoma"
			oStdFont:Size := 14
		oStatusBar:ToolTipWidth := 364
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "this is a tooltip assigned to a panel"
			oPanel:ToolTipText := "<fgcolor=FF0000>this is a tooltip assigned to a panel</fgcolor>"
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

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

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

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oPanel
	LOCAL oStatusBar
	LOCAL oStdFont

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStdFont := oStatusBar:ToolTipFont()
			oStdFont:Name := "Tahoma"
			oStdFont:Size := 14
		oStatusBar:ToolTipWidth := 364
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
24
How do I disable showing the tooltip for all control
#include "AppEvent.ch"
#include "ActiveX.ch"

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 0
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
23
How do I show the tooltip quicker

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:ToolTipWidth := 364
		oStatusBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oStatusBar:SetProperty("Background",64/*exToolTipAppearance*/,0x1000000)
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

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

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:ToolTipDelay := 1
		oStatusBar:ToolTipWidth := 364
		oStatusBar:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
		oStatusBar:SetProperty("Background",64/*exToolTipAppearance*/,0x1000000)
		oStatusBar:Format := "1"
		oPanel := oStatusBar:Panel(1)
			oPanel:Text := "This is a bit of text that should occurs when the cursor hovers the panel"
			oPanel:ToolTipText := oPanel:Text()
			oPanel:ToolTipTitle := "Title"
			oPanel:Alignment := 16/*exAlignMiddleLeft*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
21
How do I retrieve the handle of the window
#include "AppEvent.ch"
#include "ActiveX.ch"

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:Format := Transform(oStatusBar:hWnd(),"")
		oStatusBar:ClearPanels()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
20
How can I prevent the control from painting when multiple changes occurs
#include "AppEvent.ch"
#include "ActiveX.ch"

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Panel(1):Image := 1
		oStatusBar:Panel(2):Text := "<img>1:4</img><img>1:4</img><img>1:4</img><img>1</img> icons"
		oPanel := oStatusBar:Panel(3)
			oPanel:Text := "<img>2</img>"
			oPanel:Alignment := 18/*exAlignMiddleRight*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
19
How can I insert an icon aligned to the right

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oPanel := oStatusBar:Panel(2)
			oPanel:Text := "<img>2</img>"
			oPanel:Alignment := 18/*exAlignMiddleRight*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
18
How can I insert an icon to a panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Panel(2):Text := "<img>2</img>"
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
17
How can I insert icons to status bar control

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Panel(1):Image := 1
		oStatusBar:Panel(2):Text := "<img>1:4</img><img>1:4</img><img>1:4</img><img>1</img> icons"
		oPanel := oStatusBar:Panel(3)
			oPanel:Text := "<img>2</img>"
			oPanel:Alignment := 18/*exAlignMiddleRight*/
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
16
How can I insert an icon to a panel

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Panel(1):Image := 1
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
15
Is there any option to increase the empty space on borders of the control

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:BorderWidth := 20
		oStatusBar:BorderHeight := 20
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
14
How do I get the version of the control
#include "AppEvent.ch"
#include "ActiveX.ch"

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Format := oStatusBar:Version()
		oStatusBar:ClearPanels()
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
13
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 oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Picture := oStatusBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oStatusBar:PictureDisplay := 17/*MiddleCenter*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
12
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 oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Picture := oStatusBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oStatusBar:PictureDisplay := 49/*Stretch*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
11
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 oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Picture := oStatusBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oStatusBar:PictureDisplay := 34/*LowerRight*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	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 left bottom side

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Picture := oStatusBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oStatusBar:PictureDisplay := 32/*LowerLeft*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	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 top side

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Picture := oStatusBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oStatusBar:PictureDisplay := 1/*UpperCenter*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	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 right top corner

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Picture := oStatusBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oStatusBar:PictureDisplay := 2/*UpperRight*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	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 left top corner

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Picture := oStatusBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oStatusBar:PictureDisplay := 0/*UpperLeft*/
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	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 background

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

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

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:Picture := oStatusBar:ExecuteTemplate("loadpicture(`c:\exontrol\images\zipdisk.gif`)")
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
5
How do 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 oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("ForeColor",AutomationTranslateColor( GraMakeRGBColor  ( { 120,120,120 } )  , .F. ))
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
4
How do 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 oStatusBar

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

	oStatusBar := XbpActiveXControl():new( oForm:drawingArea )
	oStatusBar:CLSID  := "Exontrol.StatusBar.1" /*{0885027A-DF96-481F-928C-E3E3788889BA}*/
	oStatusBar:create(,, {10,60},{610,370} )

		oStatusBar:BeginUpdate()
		oStatusBar:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor  ( { 200,200,200 } )  , .F. ))
		oStatusBar:VisualAppearance():Add(4,"c:\exontrol\images\border.ebn")
		oStatusBar:VisualAppearance():Add(5,"CP:4 1 1 -1 -1")
		oStatusBar:SetProperty("BackColorPanels",0x5000000)
		oStatusBar:Format := "1,2,3,4,(5/6/7/8)"
		oStatusBar:Debug := .T.
		oStatusBar:EndUpdate()

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