Ribbon Form
TdxRibbon and TdxRibbonStatusBar controls are only a part of the window's non-client area.
The Microsoft® Office® 2007 UI guidelines contain requirements that developers must follow when implementing different portions of the non-client area when using a Ribbon. As such, you must develop numerous routines that paint the form's elements with the visual appearance and dimensions specified by the license guidelines.
As you can imagine, the TdxRibbonForm class takes care of these requirements. To benefit from this full-featured form:
Add the dxRibbonForm
unit to the 'uses' clause.
Derive your form from TdxRibbonForm.
Drop TdxRibbon and TdxRibbonStatusBar (if needed) controls onto the form and configure them as required.
Activate the Ribbon's SupportNonClientDrawing option.
The following image shows a form painted using a standard style (the Ribbon's SupportNonClientDrawing property is False) and a Ribbon style (the Ribbon's SupportNonClientDrawing property is True).
In addition to the provided capabilities, the TdxRibbonForm class also allows you to customize the height of the Ribbon Form's title bar. To do this, override the TdxRibbonForm.GetCaptionHeightDelta method. To learn how to accomplish this task, refer to the How to Change the Height of the Ribbon Form's Title in Code help topic.
At runtime, if the Ribbon control's SupportNonClientDrawing property is set to True, part of the Ribbon displays a Ribbon Form's non-client area. By default, a Ribbon Form is automatically adjusted at runtime to retain the control layout specified at design time. As a result, the form is vertically resized to preserve control offsets relative to the Ribbon's and form's bottom edges. Use the form's AdjustLayoutForNonClientDrawing property to customize this behavior.
To allow a Ribbon control to correctly paint a Ribbon Form's non-client area on itself, the Ribbon control should always be the topmost control on the form. To ensure this, when you programmatically create a Ribbon control, set the Ribbon Form's RibbonAlwaysOnTop property to True. Note that this property is available only in Delphi/C++ Builder 2006 and later.