Codejock Forums Homepage
Forum Home Forum Home > Codejock Products > ActiveX COM > Command Bars
  New Posts New Posts RSS Feed - Add CommandBarControl Before Item
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Add CommandBarControl Before Item

 Post Reply Post Reply
Author
Message
jpbro View Drop Down
Senior Member
Senior Member
Avatar

Joined: 12 January 2007
Status: Offline
Points: 1354
Post Options Post Options   Thanks (0) Thanks(0)   Quote jpbro Quote  Post ReplyReply Direct Link To This Post Topic: Add CommandBarControl Before Item
    Posted: 02 June 2008 at 7:55pm
Hi,

I've been trying to add a CommandBarControl before an existing item in a dynamically generated menu...

I have a QuickAccess control set up as follows (this works fine):


      Set objQA = mobjRibbonBar.QuickAccessControls.Add(xtpControlSplitButtonPopup, CMD_Print, "Print")
      objQA.CommandBar.BarID = CMD_Print
      With objQA.CommandBar.Controls
         Set objCtrl = .Add(xtpControlLabel, CMD_PrinterDeviceLabel, "Available Printers")
         Set objCtrl = .Add(xtpControlButton, CMD_PrintSetup, "Print Setup")
         objCtrl.BeginGroup = True
      End With


Now I want to dynamically populate a list of available printers between the CMD_PrinterDeviceLabel and CMD_PrintSetup controls. I'm using the InitCommandsPopup event to capture when the CMD_Print QA control drop down button has been pressed as follows:


Private Sub CommandBars1_InitCommandsPopup(ByVal CommandBar As XtremeCommandBars.ICommandBar)
  
   Dim i As Long
   Dim objCtrl As CommandBarControl
  
   Select Case CommandBar.BarID
   Case CMD_Print
       ' Lots of code not shown to show/hide printers dynamically
   End Select


This also works okay, except when I add a printer to the list, it always appears below the CMD_PrintSetup control. I've tried:


CommandBar.Controls.Add xtpControlButton, CMD_PrinterDevice + i, Printers(i).DeviceName, CMD_PrintSetup


And


CommandBar.Controls.Add xtpControlButton, CMD_PrinterDevice + i, Printers(i).DeviceName, CommandBar.FindControl(, CMD_PrintSetup).Index


And


CommandBar.Controls.Add xtpControlButton, CMD_PrinterDevice + i, Printers(i).DeviceName, CommandBar.FindControl(, CMD_PrintSetup)



Without success (the printer device names always get added below the CMD_PrintSetup control). Is there a way to accomplish this?

Thanks in advance.
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3

Language: Visual Basic 6.0 SP6

Back to Top
jpbro View Drop Down
Senior Member
Senior Member
Avatar

Joined: 12 January 2007
Status: Offline
Points: 1354
Post Options Post Options   Thanks (0) Thanks(0)   Quote jpbro Quote  Post ReplyReply Direct Link To This Post Posted: 02 June 2008 at 7:59pm
Okay, the magic potion was:


CommandBar.Controls.Add xtpControlButton, CMD_PrinterDevice + i, dictPrinters.KeyByIndex(i), CommandBar.Controls.Count


Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3

Language: Visual Basic 6.0 SP6

Back to Top
 Post Reply Post Reply
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 12.04
Copyright ©2001-2021 Web Wiz Ltd.

This page was generated in 0.188 seconds.