Type | Description | |||
String |
A String expression that specifies the offset as a pair (horizontal,
vertical) to display the item's submenu/popup relative to its default position.
The horizontal/vertical can be one of the following:
|
For instance, the following sample, displays the item's drop down relative to the control ( call ShowPopupOffset ):
With Ribbon1 .PopupAppearance = ShadowBorder With .Items With .Add("Popup <b>1",2,100) .ShowPopupArrow = False .ShowPopupAlign = exShowPopupAlignDown .ShowPopupOffset = "0,0:control" With .Items .Add "Item 1" .Add "Item 2" .Add "Item 3" End With End With With .Add("Popup <b>2",2,200) .GroupPopup = exGroupPopup With .Items .Add "Item 2" .Add "Item 3" .Add "Item 4" End With End With End With .Refresh End With
and we get:
while following sample displays the item's drop down at its default position ( no ShowPopupOffset call, default ):
With Ribbon1 .PopupAppearance = ShadowBorder With .Items With .Add("Popup <b>1",2,100) .ShowPopupArrow = False .ShowPopupAlign = exShowPopupAlignDown.ShowPopupOffset = "0,0:control"With .Items .Add "Item 1" .Add "Item 2" .Add "Item 3" End With End With With .Add("Popup <b>2",2,200) .GroupPopup = exGroupPopup With .Items .Add "Item 2" .Add "Item 3" .Add "Item 4" End With End With End With .Refresh End With
and we get:
How can I display the drop down popup to a different position?
VBA (MS Access, Excell...)
With Ribbon1 With .Items With .Add("Popup",2,100) .ShowPopupAlign = 1 .ShowPopupArrow = False .ShowPopupOffset = "-12,-48" With .Items .PopupAppearance = 3 .Add "Item 1" .Add "Item 2" .Add "Item 3" End With End With End With .Refresh End With
VB6
With Ribbon1 With .Items With .Add("Popup",2,100) .ShowPopupAlign = exShowPopupAlignDown .ShowPopupArrow = False .ShowPopupOffset = "-12,-48" With .Items .PopupAppearance = RaisedBorder .Add "Item 1" .Add "Item 2" .Add "Item 3" End With End With End With .Refresh End With
VB.NET
With Exribbon1 With .Items With .Add("Popup",2,100) .ShowPopupAlign = exontrol.EXRIBBONLib.ShowPopupAlignEnum.exShowPopupAlignDown .ShowPopupArrow = False .ShowPopupOffset = "-12,-48" With .Items .PopupAppearance = exontrol.EXRIBBONLib.AppearanceEnum.RaisedBorder .Add("Item 1") .Add("Item 2") .Add("Item 3") End With End With End With .Refresh() End With
VB.NET for /COM
With AxRibbon1 With .Items With .Add("Popup",2,100) .ShowPopupAlign = EXRIBBONLib.ShowPopupAlignEnum.exShowPopupAlignDown .ShowPopupArrow = False .ShowPopupOffset = "-12,-48" With .Items .PopupAppearance = EXRIBBONLib.AppearanceEnum.RaisedBorder .Add("Item 1") .Add("Item 2") .Add("Item 3") End With End With End With .Refresh() End With
C++
/* Copy and paste the following directives to your header file as it defines the namespace 'EXRIBBONLib' for the library: 'ExRibbon 1.0 Control Library' #import <ExRibbon.dll> using namespace EXRIBBONLib; */ EXRIBBONLib::IRibbonPtr spRibbon1 = GetDlgItem(IDC_RIBBON1)->GetControlUnknown(); EXRIBBONLib::IItemsPtr var_Items = spRibbon1->GetItems(); EXRIBBONLib::IItemPtr var_Item = var_Items->Add(L"Popup",long(2),long(100)); var_Item->PutShowPopupAlign(EXRIBBONLib::exShowPopupAlignDown); var_Item->PutShowPopupArrow(VARIANT_FALSE); var_Item->PutShowPopupOffset(L"-12,-48"); EXRIBBONLib::IItemsPtr var_Items1 = var_Item->GetItems(); var_Items1->PutPopupAppearance(EXRIBBONLib::RaisedBorder); var_Items1->Add(L"Item 1",vtMissing,vtMissing); var_Items1->Add(L"Item 2",vtMissing,vtMissing); var_Items1->Add(L"Item 3",vtMissing,vtMissing); spRibbon1->Refresh();
C++ Builder
Exribbonlib_tlb::IItemsPtr var_Items = Ribbon1->Items; Exribbonlib_tlb::IItemPtr var_Item = var_Items->Add(L"Popup",TVariant(2),TVariant(100)); var_Item->ShowPopupAlign = Exribbonlib_tlb::ShowPopupAlignEnum::exShowPopupAlignDown; var_Item->ShowPopupArrow = false; var_Item->ShowPopupOffset = L"-12,-48"; Exribbonlib_tlb::IItemsPtr var_Items1 = var_Item->Items; var_Items1->PopupAppearance = Exribbonlib_tlb::AppearanceEnum::RaisedBorder; var_Items1->Add(L"Item 1",TNoParam(),TNoParam()); var_Items1->Add(L"Item 2",TNoParam(),TNoParam()); var_Items1->Add(L"Item 3",TNoParam(),TNoParam()); Ribbon1->Refresh();
C#
exontrol.EXRIBBONLib.Items var_Items = exribbon1.Items; exontrol.EXRIBBONLib.Item var_Item = var_Items.Add("Popup",2,100); var_Item.ShowPopupAlign = exontrol.EXRIBBONLib.ShowPopupAlignEnum.exShowPopupAlignDown; var_Item.ShowPopupArrow = false; var_Item.ShowPopupOffset = "-12,-48"; exontrol.EXRIBBONLib.Items var_Items1 = var_Item.Items; var_Items1.PopupAppearance = exontrol.EXRIBBONLib.AppearanceEnum.RaisedBorder; var_Items1.Add("Item 1",null,null); var_Items1.Add("Item 2",null,null); var_Items1.Add("Item 3",null,null); exribbon1.Refresh();
JScript/JavaScript
<BODY onload='Init()'> <OBJECT CLASSID="clsid:DDF58CFA-750F-45E0-8A00-CFBE431702E2" id="Ribbon1"></OBJECT> <SCRIPT LANGUAGE="JScript"> function Init() { var var_Items = Ribbon1.Items; var var_Item = var_Items.Add("Popup",2,100); var_Item.ShowPopupAlign = 1; var_Item.ShowPopupArrow = false; var_Item.ShowPopupOffset = "-12,-48"; var var_Items1 = var_Item.Items; var_Items1.PopupAppearance = 3; var_Items1.Add("Item 1",null,null); var_Items1.Add("Item 2",null,null); var_Items1.Add("Item 3",null,null); Ribbon1.Refresh(); } </SCRIPT> </BODY>
VBScript
<BODY onload='Init()'> <OBJECT CLASSID="clsid:DDF58CFA-750F-45E0-8A00-CFBE431702E2" id="Ribbon1"></OBJECT> <SCRIPT LANGUAGE="VBScript"> Function Init() With Ribbon1 With .Items With .Add("Popup",2,100) .ShowPopupAlign = 1 .ShowPopupArrow = False .ShowPopupOffset = "-12,-48" With .Items .PopupAppearance = 3 .Add "Item 1" .Add "Item 2" .Add "Item 3" End With End With End With .Refresh End With End Function </SCRIPT> </BODY>
C# for /COM
EXRIBBONLib.Items var_Items = axRibbon1.Items; EXRIBBONLib.Item var_Item = var_Items.Add("Popup",2,100); var_Item.ShowPopupAlign = EXRIBBONLib.ShowPopupAlignEnum.exShowPopupAlignDown; var_Item.ShowPopupArrow = false; var_Item.ShowPopupOffset = "-12,-48"; EXRIBBONLib.Items var_Items1 = var_Item.Items; var_Items1.PopupAppearance = EXRIBBONLib.AppearanceEnum.RaisedBorder; var_Items1.Add("Item 1",null,null); var_Items1.Add("Item 2",null,null); var_Items1.Add("Item 3",null,null); axRibbon1.Refresh();
X++ (Dynamics Ax 2009)
public void init() { COM com_Item,com_Items,com_Items1; anytype var_Item,var_Items,var_Items1; ; super(); var_Items = exribbon1.Items(); com_Items = var_Items; var_Item = com_Items.Add("Popup",COMVariant::createFromInt(2),COMVariant::createFromInt(100)); com_Item = var_Item; com_Item.ShowPopupAlign(1/*exShowPopupAlignDown*/); com_Item.ShowPopupArrow(false); com_Item.ShowPopupOffset("-12,-48"); var_Items1 = com_Item.Items(); com_Items1 = var_Items1; com_Items1.PopupAppearance(3/*RaisedBorder*/); com_Items1.Add("Item 1"); com_Items1.Add("Item 2"); com_Items1.Add("Item 3"); exribbon1.Refresh(); }
Delphi 8 (.NET only)
with AxRibbon1 do begin with Items do begin with Add('Popup',TObject(2),TObject(100)) do begin ShowPopupAlign := EXRIBBONLib.ShowPopupAlignEnum.exShowPopupAlignDown; ShowPopupArrow := False; ShowPopupOffset := '-12,-48'; with Items do begin PopupAppearance := EXRIBBONLib.AppearanceEnum.RaisedBorder; Add('Item 1',Nil,Nil); Add('Item 2',Nil,Nil); Add('Item 3',Nil,Nil); end; end; end; Refresh(); end
Delphi (standard)
with Ribbon1 do begin with Items do begin with Add('Popup',OleVariant(2),OleVariant(100)) do begin ShowPopupAlign := EXRIBBONLib_TLB.exShowPopupAlignDown; ShowPopupArrow := False; ShowPopupOffset := '-12,-48'; with Items do begin PopupAppearance := EXRIBBONLib_TLB.RaisedBorder; Add('Item 1',Null,Null); Add('Item 2',Null,Null); Add('Item 3',Null,Null); end; end; end; Refresh(); end
VFP
with thisform.Ribbon1 with .Items with .Add("Popup",2,100) .ShowPopupAlign = 1 .ShowPopupArrow = .F. .ShowPopupOffset = "-12,-48" with .Items .PopupAppearance = 3 .Add("Item 1") .Add("Item 2") .Add("Item 3") endwith endwith endwith .Refresh endwith
dBASE Plus
local oRibbon,var_Item,var_Items,var_Items1 oRibbon = form.Activex1.nativeObject var_Items = oRibbon.Items var_Item = var_Items.Add("Popup",2,100) var_Item.ShowPopupAlign = 1 var_Item.ShowPopupArrow = false var_Item.ShowPopupOffset = "-12,-48" var_Items1 = var_Item.Items var_Items1.PopupAppearance = 3 var_Items1.Add("Item 1") var_Items1.Add("Item 2") var_Items1.Add("Item 3") oRibbon.Refresh()
XBasic (Alpha Five)
Dim oRibbon as P Dim var_Item as P Dim var_Items as P Dim var_Items1 as P oRibbon = topparent:CONTROL_ACTIVEX1.activex var_Items = oRibbon.Items var_Item = var_Items.Add("Popup",2,100) var_Item.ShowPopupAlign = 1 var_Item.ShowPopupArrow = .f. var_Item.ShowPopupOffset = "-12,-48" var_Items1 = var_Item.Items var_Items1.PopupAppearance = 3 var_Items1.Add("Item 1") var_Items1.Add("Item 2") var_Items1.Add("Item 3") oRibbon.Refresh()
Visual Objects
local var_Item as IItem local var_Items,var_Items1 as IItems var_Items := oDCOCX_Exontrol1:Items var_Item := var_Items:Add("Popup",2,100) var_Item:ShowPopupAlign := exShowPopupAlignDown var_Item:ShowPopupArrow := false var_Item:ShowPopupOffset := "-12,-48" var_Items1 := var_Item:Items var_Items1:PopupAppearance := RaisedBorder var_Items1:Add("Item 1",nil,nil) var_Items1:Add("Item 2",nil,nil) var_Items1:Add("Item 3",nil,nil) oDCOCX_Exontrol1:Refresh()
PowerBuilder
OleObject oRibbon,var_Item,var_Items,var_Items1 oRibbon = ole_1.Object var_Items = oRibbon.Items var_Item = var_Items.Add("Popup",2,100) var_Item.ShowPopupAlign = 1 var_Item.ShowPopupArrow = false var_Item.ShowPopupOffset = "-12,-48" var_Items1 = var_Item.Items var_Items1.PopupAppearance = 3 var_Items1.Add("Item 1") var_Items1.Add("Item 2") var_Items1.Add("Item 3") oRibbon.Refresh()
Visual DataFlex
Procedure OnCreate Forward Send OnCreate Variant voItems Get ComItems to voItems Handle hoItems Get Create (RefClass(cComItems)) to hoItems Set pvComObject of hoItems to voItems Variant voItem Get ComAdd of hoItems "Popup" 2 100 to voItem Handle hoItem Get Create (RefClass(cComItem)) to hoItem Set pvComObject of hoItem to voItem Set ComShowPopupAlign of hoItem to OLEexShowPopupAlignDown Set ComShowPopupArrow of hoItem to False Set ComShowPopupOffset of hoItem to "-12,-48" Variant voItems1 Get ComItems of hoItem to voItems1 Handle hoItems1 Get Create (RefClass(cComItems)) to hoItems1 Set pvComObject of hoItems1 to voItems1 Set ComPopupAppearance of hoItems1 to OLERaisedBorder Get ComAdd of hoItems1 "Item 1" Nothing Nothing to Nothing Get ComAdd of hoItems1 "Item 2" Nothing Nothing to Nothing Get ComAdd of hoItems1 "Item 3" Nothing Nothing to Nothing Send Destroy to hoItems1 Send Destroy to hoItem Send Destroy to hoItems Send ComRefresh End_Procedure
XBase++
#include "AppEvent.ch" #include "ActiveX.ch" PROCEDURE Main LOCAL oForm LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL LOCAL oItem LOCAL oItems,oItems1 LOCAL oRibbon oForm := XbpDialog():new( AppDesktop() ) oForm:drawingArea:clipChildren := .T. oForm:create( ,,{100,100}, {640,480},, .F. ) oForm:close := {|| PostAppEvent( xbeP_Quit )} oRibbon := XbpActiveXControl():new( oForm:drawingArea ) oRibbon:CLSID := "Exontrol.Ribbon.1" /*{DDF58CFA-750F-45E0-8A00-CFBE431702E2}*/ oRibbon:create(,, {10,60},{610,370} ) oItems := oRibbon:Items() oItem := oItems:Add("Popup",2,100) oItem:ShowPopupAlign := 1/*exShowPopupAlignDown*/ oItem:ShowPopupArrow := .F. oItem:ShowPopupOffset := "-12,-48" oItems1 := oItem:Items() oItems1:PopupAppearance := 3/*RaisedBorder*/ oItems1:Add("Item 1") oItems1:Add("Item 2") oItems1:Add("Item 3") oRibbon:Refresh() oForm:Show() DO WHILE nEvent != xbeP_Quit nEvent := AppEvent( @mp1, @mp2, @oXbp ) oXbp:handleEvent( nEvent, mp1, mp2 ) ENDDO RETURN