How can I display a percent or a progress-bar inside the panel?
VBA (MS Access, Excell...)
With StatusBar1
.BeginUpdate
.VisualAppearance.Add 4,"c:\exontrol\images\border.ebn"
.VisualAppearance.Add 5,"CP:4 1 1 -1 -1"
.BackColorPanels = &H5000000
.BackColor = &H8000000f
.Format = "1/2,(24;5/6)"
With .Panel(5)
.Text = "15%"
.Percent = 15
End With
.EndUpdate
End With
VB6
With StatusBar1
.BeginUpdate
.VisualAppearance.Add 4,"c:\exontrol\images\border.ebn"
.VisualAppearance.Add 5,"CP:4 1 1 -1 -1"
.BackColorPanels = &H5000000
.BackColor = &H8000000f
.Format = "1/2,(24;5/6)"
With .Panel(5)
.Text = "15%"
.Percent = 15
End With
.EndUpdate
End With
VB.NET
With Exstatusbar1
.BeginUpdate()
.VisualAppearance.Add(4,"c:\exontrol\images\border.ebn")
.VisualAppearance.Add(5,"CP:4 1 1 -1 -1")
.BackColorPanels32 = &H5000000
.BackColor32 = &H8000000f
.Format = "1/2,(24;5/6)"
With .get_Panel(5)
.Text = "15%"
.Percent = 15
End With
.EndUpdate()
End With
VB.NET for /COM
With AxStatusBar1
.BeginUpdate()
.VisualAppearance.Add(4,"c:\exontrol\images\border.ebn")
.VisualAppearance.Add(5,"CP:4 1 1 -1 -1")
.GetOcx().BackColorPanels = &H5000000
.GetOcx().BackColor = &H8000000f
.Format = "1/2,(24;5/6)"
With .get_Panel(5)
.Text = "15%"
.Percent = 15
End With
.EndUpdate()
End With
C++
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXSTATUSBARLib' for the library: 'ExStatusBar 1.0 Control Library'
#import <ExStatusBar.dll>
using namespace EXSTATUSBARLib;
*/
EXSTATUSBARLib::IStatusBarPtr spStatusBar1 = GetDlgItem(IDC_STATUSBAR1)->GetControlUnknown();
spStatusBar1->BeginUpdate();
spStatusBar1->GetVisualAppearance()->Add(4,"c:\\exontrol\\images\\border.ebn");
spStatusBar1->GetVisualAppearance()->Add(5,"CP:4 1 1 -1 -1");
spStatusBar1->PutBackColorPanels(0x5000000);
spStatusBar1->PutBackColor(0x8000000f);
spStatusBar1->PutFormat(L"1/2,(24;5/6)");
EXSTATUSBARLib::IPanelPtr var_Panel = spStatusBar1->GetPanel(long(5));
var_Panel->PutText(L"15%");
var_Panel->PutPercent(15);
spStatusBar1->EndUpdate();
C++ Builder
StatusBar1->BeginUpdate();
StatusBar1->VisualAppearance->Add(4,TVariant("c:\\exontrol\\images\\border.ebn"));
StatusBar1->VisualAppearance->Add(5,TVariant("CP:4 1 1 -1 -1"));
StatusBar1->BackColorPanels = 0x5000000;
StatusBar1->BackColor = 0x8000000f;
StatusBar1->Format = L"1/2,(24;5/6)";
Exstatusbarlib_tlb::IPanelPtr var_Panel = StatusBar1->Panel[TVariant(5)];
var_Panel->Text = L"15%";
var_Panel->Percent = 15;
StatusBar1->EndUpdate();
C#
exstatusbar1.BeginUpdate();
exstatusbar1.VisualAppearance.Add(4,"c:\\exontrol\\images\\border.ebn");
exstatusbar1.VisualAppearance.Add(5,"CP:4 1 1 -1 -1");
exstatusbar1.BackColorPanels32 = 0x5000000;
exstatusbar1.BackColor32 = 0x8000000f;
exstatusbar1.Format = "1/2,(24;5/6)";
exontrol.EXSTATUSBARLib.Panel var_Panel = exstatusbar1.get_Panel(5);
var_Panel.Text = "15%";
var_Panel.Percent = 15;
exstatusbar1.EndUpdate();
JavaScript
<OBJECT classid="clsid:0885027A-DF96-481F-928C-E3E3788889BA" id="StatusBar1"></OBJECT>
<SCRIPT LANGUAGE="JScript">
StatusBar1.BeginUpdate();
StatusBar1.VisualAppearance.Add(4,"c:\\exontrol\\images\\border.ebn");
StatusBar1.VisualAppearance.Add(5,"CP:4 1 1 -1 -1");
StatusBar1.BackColorPanels = 83886080;
StatusBar1.BackColor = -2147483633;
StatusBar1.Format = "1/2,(24;5/6)";
var var_Panel = StatusBar1.Panel(5);
var_Panel.Text = "15%";
var_Panel.Percent = 15;
StatusBar1.EndUpdate();
</SCRIPT>
C# for /COM
axStatusBar1.BeginUpdate();
axStatusBar1.VisualAppearance.Add(4,"c:\\exontrol\\images\\border.ebn");
axStatusBar1.VisualAppearance.Add(5,"CP:4 1 1 -1 -1");
(axStatusBar1.GetOcx() as EXSTATUSBARLib.StatusBar).BackColorPanels = 0x5000000;
(axStatusBar1.GetOcx() as EXSTATUSBARLib.StatusBar).BackColor = 0x8000000f;
axStatusBar1.Format = "1/2,(24;5/6)";
EXSTATUSBARLib.Panel var_Panel = axStatusBar1.get_Panel(5);
var_Panel.Text = "15%";
var_Panel.Percent = 15;
axStatusBar1.EndUpdate();
X++ (Dynamics Ax 2009)
public void init()
{
COM com_Panel;
anytype var_Panel;
;
super();
exstatusbar1.BeginUpdate();
exstatusbar1.VisualAppearance().Add(4,"c:\\exontrol\\images\\border.ebn");
exstatusbar1.VisualAppearance().Add(5,"CP:4 1 1 -1 -1");
exstatusbar1.BackColorPanels(0x5000000);
exstatusbar1.BackColor(0x8000000f);
exstatusbar1.Format("1/2,(24;5/6)");
var_Panel = exstatusbar1.Panel(COMVariant::createFromInt(5)); com_Panel = var_Panel;
com_Panel.Text("15%");
com_Panel.Percent(15);
exstatusbar1.EndUpdate();
}
Delphi 8 (.NET only)
with AxStatusBar1 do
begin
BeginUpdate();
VisualAppearance.Add(4,'c:\exontrol\images\border.ebn');
VisualAppearance.Add(5,'CP:4 1 1 -1 -1');
(GetOcx() as EXSTATUSBARLib.StatusBar).BackColorPanels := $5000000;
(GetOcx() as EXSTATUSBARLib.StatusBar).BackColor := $8000000f;
Format := '1/2,(24;5/6)';
with get_Panel(TObject(5)) do
begin
Text := '15%';
Percent := 15;
end;
EndUpdate();
end
Delphi (standard)
with StatusBar1 do
begin
BeginUpdate();
VisualAppearance.Add(4,'c:\exontrol\images\border.ebn');
VisualAppearance.Add(5,'CP:4 1 1 -1 -1');
BackColorPanels := $5000000;
BackColor := $8000000f;
Format := '1/2,(24;5/6)';
with Panel[OleVariant(5)] do
begin
Text := '15%';
Percent := 15;
end;
EndUpdate();
end
VFP
with thisform.StatusBar1
.BeginUpdate
.VisualAppearance.Add(4,"c:\exontrol\images\border.ebn")
.VisualAppearance.Add(5,"CP:4 1 1 -1 -1")
.BackColorPanels = 0x5000000
.BackColor = 0x8000000f
.Format = "1/2,(24;5/6)"
with .Panel(5)
.Text = "15%"
.Percent = 15
endwith
.EndUpdate
endwith
dBASE Plus
local oStatusBar,var_Panel
oStatusBar = form.Activex1.nativeObject
oStatusBar.BeginUpdate()
oStatusBar.VisualAppearance.Add(4,"c:\exontrol\images\border.ebn")
oStatusBar.VisualAppearance.Add(5,"CP:4 1 1 -1 -1")
oStatusBar.BackColorPanels = 0x5000000
oStatusBar.BackColor = 0x8000000f
oStatusBar.Format = "1/2,(24;5/6)"
var_Panel = oStatusBar.Panel(5)
var_Panel.Text = "15%"
var_Panel.Percent = 15
oStatusBar.EndUpdate()
XBasic (Alpha Five)
Dim oStatusBar as P
Dim var_Panel as P
oStatusBar = topparent:CONTROL_ACTIVEX1.activex
oStatusBar.BeginUpdate()
oStatusBar.VisualAppearance.Add(4,"c:\exontrol\images\border.ebn")
oStatusBar.VisualAppearance.Add(5,"CP:4 1 1 -1 -1")
oStatusBar.BackColorPanels = 83886080
oStatusBar.BackColor = -2147483633
oStatusBar.Format = "1/2,(24;5/6)"
var_Panel = oStatusBar.Panel(5)
var_Panel.Text = "15%"
var_Panel.Percent = 15
oStatusBar.EndUpdate()
Visual Objects
local var_Panel as IPanel
oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:VisualAppearance:Add(4,"c:\exontrol\images\border.ebn")
oDCOCX_Exontrol1:VisualAppearance:Add(5,"CP:4 1 1 -1 -1")
oDCOCX_Exontrol1:BackColorPanels := 0x5000000
oDCOCX_Exontrol1:BackColor := 0x8000000f
oDCOCX_Exontrol1:Format := "1/2,(24;5/6)"
var_Panel := oDCOCX_Exontrol1:[Panel,5]
var_Panel:Text := "15%"
var_Panel:Percent := 15
oDCOCX_Exontrol1:EndUpdate()
PowerBuilder
OleObject oStatusBar,var_Panel
oStatusBar = ole_1.Object
oStatusBar.BeginUpdate()
oStatusBar.VisualAppearance.Add(4,"c:\exontrol\images\border.ebn")
oStatusBar.VisualAppearance.Add(5,"CP:4 1 1 -1 -1")
oStatusBar.BackColorPanels = 83886080 /*0x5000000*/
oStatusBar.BackColor = -2147483633 /*0x8000000f*/
oStatusBar.Format = "1/2,(24;5/6)"
var_Panel = oStatusBar.Panel(5)
var_Panel.Text = "15%"
var_Panel.Percent = 15
oStatusBar.EndUpdate()
Visual DataFlex
Procedure OnCreate
Forward Send OnCreate
Send ComBeginUpdate
Variant voAppearance
Get ComVisualAppearance to voAppearance
Handle hoAppearance
Get Create (RefClass(cComAppearance)) to hoAppearance
Set pvComObject of hoAppearance to voAppearance
Get ComAdd of hoAppearance 4 "c:\exontrol\images\border.ebn" to Nothing
Send Destroy to hoAppearance
Variant voAppearance1
Get ComVisualAppearance to voAppearance1
Handle hoAppearance1
Get Create (RefClass(cComAppearance)) to hoAppearance1
Set pvComObject of hoAppearance1 to voAppearance1
Get ComAdd of hoAppearance1 5 "CP:4 1 1 -1 -1" to Nothing
Send Destroy to hoAppearance1
Set ComBackColorPanels to |CI$5000000
Set ComBackColor to |CI$8000000f
Set ComFormat to "1/2,(24;5/6)"
Variant voPanel
Get ComPanel 5 to voPanel
Handle hoPanel
Get Create (RefClass(cComPanel)) to hoPanel
Set pvComObject of hoPanel to voPanel
Set ComText of hoPanel to "15%"
Set ComPercent of hoPanel to 15
Send Destroy to hoPanel
Send ComEndUpdate
End_Procedure
XBase++
#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:BackColorPanels := 0x5000000
oStatusBar: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