BCGControlBar中文教程:Ribbon Bar(3/3)

常见问题和答疑

Q. 如何添加一个工具栏组合框按钮到面板中?

A. 使用CBCGPRibbonComboBox元素:

1
pPanel-<Add ( new CBCGPRibbonComboBox (ID_MY_COMBO);

Q. 如何添加一个快速启动按钮?

A. 假设ID_APP_ABOUT命令显示"About"对话框,想要启用面板的快递启动按钮需要做到以下几点:

1
pPanel-<EnableLaunchButton (ID_APP_ABOUT);

Q. 在资源中如何从定义的工具栏中添加一个按钮的几个面板组?

A. 在资源编辑器(IDR_MAINFRAME)中创建一个工具栏,为该工具栏(IDB_MAINFRAME256)新增一个图片列表。

1
pPanel-<AddToolBar (IDR_MAINFRAME, IDB_MAINFRAME256);

Q. 如何添加一组按钮到动态面板中?

A. 创建一个CBCGPRibbonButtonsGroup对象,为其新增按钮,同时将该对象添加到面板中:

1
2
3
4
5
6
CBCGPRibbonButtonsGroup* pButtonsList =  new CBCGPRibbonButtonsGroup;
 
pButtonsList-<AddButton ( new CBCGPRibbonButton (ID_FORMAT_GROWFONT, _T( "Grow font" ), 19));
pButtonsList-<AddButton ( new CBCGPRibbonButton (ID_FORMAT_SHRINKFONT, _T( "Shrink Font" ), 20));
 
pPanel-<Add (pButtonsList);

Q. 如何从工具栏中创建一个自定义按钮到一组按钮中?

A. 当工具栏被添加到面板之后,您需要使用自定义按钮代替“常规”按钮。因为Ribbon控件复制并创建动态按钮(例如,当没有控件显示一个按钮,并且该按钮应该被方式在弹出式面板中,Ribbon控件会创建一个按钮副本),您需要指定该自定义按钮的运行时类。

1
2
3
4
5
6
7
8
// Load and add toolbar with standard buttons. This toolbar should display a custom color button
// with id ID_CHAR_COLOR:
pPanel-<AddToolBar (IDR_MAINFRAME, IDB_MAINFRAME256);
CBCGPRibbonColorButton* pColorButton = (CBCGPRibbonColorButton*)
pPanel-<SetElementRTCByID (ID_CHAR_COLOR, RUNTIME_CLASS (CBCGPRibbonColorButton));
// SetElementRTCByID sets runtime class and returns a pointer to the
// newly created custom button, which can be set up immediately:
pColorButton-<EnableAutomaticButton (_T( "Automatic" ), RGB (0, 0, 0));

Q. 如何设置快速访问工具栏?

A. 只需要填写"quick access"命令并调用CBCGPRibbonBar::SetQuickAccessCommands:

1
2
3
4
5
6
7
CList< UINT UINT > lst;
 
lst.AddTail (ID_FILE_SAVE);
lst.AddTail (ID_EDIT_COPY);
lst.AddTail (ID_FILE_PRINT);
 
m_wndRibbonBar.SetQuickAccessCommands (lst);

Q. 如何在标签右边添加元素?

A. 在标签右边添加"About"按钮:

1
2
m_wndRibbonBar.AddToTabs (
new CBCGPRibbonButton (ID_APP_ABOUT, _T( "" ), m_icons.ExtractIcon (5)));

有兴趣的朋友可以击查看更多教程>>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值