

| Type | Description | |||
| Panel as Panel | A Panel object being painted | |||
| hDC as Long | A long expression that indicates the handle to the painting device context ( HDC ) | |||
| DefaultPainting as Boolean | (By Reference) A Boolen expression that indicates whether the default painting should be performed or not. If the DefaultPainting parameter is True, the control paints the part as default, else the panel is not painted by the control so the user should draw the panel. | 

Syntax for OwnerDrawStart event, /NET version, on:
		private void OwnerDrawStart(object sender,exontrol.EXSTATUSBARLib.Panel Panel,int hDC,ref bool DefaultPainting)
{
}
		Private Sub OwnerDrawStart(ByVal sender As System.Object,ByVal Panel As exontrol.EXSTATUSBARLib.Panel,ByVal hDC As Integer,ByRef DefaultPainting As Boolean) Handles OwnerDrawStart End Sub  | 
		private void OwnerDrawStart(object sender, AxEXSTATUSBARLib._IStatusBarEvents_OwnerDrawStartEvent e)
{
}
		void OnOwnerDrawStart(LPDISPATCH Panel,long hDC,BOOL FAR* DefaultPainting)
{
}
		void __fastcall OwnerDrawStart(TObject *Sender,Exstatusbarlib_tlb::IPanel *Panel,long hDC,VARIANT_BOOL * DefaultPainting)
{
}
		procedure OwnerDrawStart(ASender: TObject; Panel : IPanel;hDC : Integer;var DefaultPainting : WordBool); begin end; procedure OwnerDrawStart(sender: System.Object; e: AxEXSTATUSBARLib._IStatusBarEvents_OwnerDrawStartEvent); begin end; begin event OwnerDrawStart(oleobject Panel,long hDC,boolean DefaultPainting) end event OwnerDrawStart Private Sub OwnerDrawStart(ByVal sender As System.Object, ByVal e As AxEXSTATUSBARLib._IStatusBarEvents_OwnerDrawStartEvent) Handles OwnerDrawStart End Sub Private Sub OwnerDrawStart(ByVal Panel As EXSTATUSBARLibCtl.IPanel,ByVal hDC As Long,DefaultPainting As Boolean) End Sub Private Sub OwnerDrawStart(ByVal Panel As Object,ByVal hDC As Long,DefaultPainting As Boolean) End Sub LPARAMETERS Panel,hDC,DefaultPainting PROCEDURE OnOwnerDrawStart(oStatusBar,Panel,hDC,DefaultPainting) RETURN  | 
		<SCRIPT EVENT="OwnerDrawStart(Panel,hDC,DefaultPainting)" LANGUAGE="JScript"> </SCRIPT> <SCRIPT LANGUAGE="VBScript"> Function OwnerDrawStart(Panel,hDC,DefaultPainting) End Function </SCRIPT> Procedure OnComOwnerDrawStart Variant llPanel Integer llhDC Boolean llDefaultPainting Forward Send OnComOwnerDrawStart llPanel llhDC llDefaultPainting End_Procedure METHOD OCX_OwnerDrawStart(Panel,hDC,DefaultPainting) CLASS MainDialog RETURN NIL void onEvent_OwnerDrawStart(COM _Panel,int _hDC,COMVariant /*bool*/ _DefaultPainting)
{
}
		function OwnerDrawStart as v (Panel as OLE::Exontrol.StatusBar.1::IPanel,hDC as N,DefaultPainting as L) end function function nativeObject_OwnerDrawStart(Panel,hDC,DefaultPainting) return  | 
The following VB sample displays a curve in the owner draw panel:
Private Type RECT
        Left As Long
        Top As Long
        Right As Long
        Bottom As Long
End Type
Private Type POINTAPI
        x As Long
        y As Long
End Type
Private Declare Function GetClipBox Lib "gdi32" (ByVal hdc As Long, lpRect As RECT) As Long
Private Declare Function PolyBezier Lib "gdi32" (ByVal hdc As Long, lppt As POINTAPI, ByVal cPoints As Long) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function CreatePen Lib "gdi32" (ByVal nPenStyle As Long, ByVal nWidth As Long, ByVal crColor As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Sub StatusBar1_OwnerDrawStart(ByVal Panel As EXSTATUSBARLibCtl.IPanel, ByVal hdc As Long, DefaultPainting As Boolean)
    Dim r As RECT
    GetClipBox hdc, r
    hPen = CreatePen(0, 3, RGB(255, 0, 0))
    hOPen = SelectObject(hdc, hPen)
    r.Left = r.Left + 4
    r.Right = r.Right - 4
    r.Top = r.Top + 4
    r.Bottom = r.Bottom - 4
    Dim p(7) As POINTAPI
    p(0).x = r.Left
    p(0).y = r.Bottom
    p(1).x = (r.Left + r.Right) / 2
    p(1).y = r.Top
    p(2).x = r.Left
    p(2).y = r.Top
    p(3).x = 2 * (r.Left + r.Right) / 3
    p(3).y = (r.Bottom + r.Top) / 2
    p(4).x = 2 * (r.Left + r.Right) / 3
    p(4).y = r.Top
    p(5).x = 4 * (r.Left + r.Right) / 5
    p(5).y = (r.Bottom + r.Top) / 3
    p(6).x = r.Right
    p(6).y = r.Bottom
    PolyBezier hdc, p(0), 7
    SelectObject hdc, hOPen
    DeleteObject hOPen
End Sub
  The following C++ sample displays a curve in the owner draw panel:
void OnOwnerDrawStartStatusbar1(LPDISPATCH Panel, long hDC, BOOL FAR* DefaultPainting) 
{
	HDC h = (HDC)hDC;
	RECT r = {0};
	GetClipBox( h, &r );
	CPanel panel(Panel);
	panel.m_bAutoRelease = FALSE;
	POINT p[7] = {(0,0)};
	HPEN hPen = CreatePen( PS_SOLID, 3, RGB(255,0,0) );
	HPEN hOPen = (HPEN)::SelectObject( h, hPen );
	InflateRect( &r, -4, -4 );
	p[0].x = r.left;
	p[0].y = r.bottom;
	p[1].x = (r.left + r.right) / 2;
	p[1].y = r.top;
	p[2].x = r.left;
	p[2].y = r.top;
	p[3].x = 2 * (r.left + r.right) / 3;
	p[3].y = (r.bottom + r.top) / 2;
	p[4].x = 2 * (r.left + r.right) / 3;
	p[4].y = r.top;
	p[5].x = 4 * (r.left + r.right) / 5;
	p[5].y = (r.bottom + r.top) / 3;
	p[6].x = r.right;
	p[6].y = r.bottom;
	PolyBezier( h, p, 7 );
	::SelectObject( h, hOPen );
	DeleteObject( hPen );
}