Ribbon上包含以下一些元素,如图所示:

元素对应API:

Element

Ribbon API

Quick Access Toolbar RibbonControl.Toolbar
RibbonQuickAccessToolbar.ItemLinks
Application Button RibbonControl.ShowApplicationButton
RibbonControl.ApplicationButtonDropDownControl
Main pages RibbonControl.Pages
Page Category RibbonControl.Categories
Contextual pages RibbonPageCategory.Pages
Page Groups RibbonPage.Groups
RibbonPageGroup.ItemLinks
Bar Item links RibbonControl.Items
BarItemLink.Item

1、首先新建一窗体工程,从工具栏“导航和布局Navigation&Layout”拖动RibbonControl到窗体,RibbonControl自动停靠到Form靠上的位置,如下图所示:

  Page:表示Ribbon的菜单项,参考Word2007的“开始”菜单(菜单下又分很多PageGroup,每一个PageGroup里可以包含多个功能项,如按钮、文本、编辑框等等)功能项和Quick Access快速访问实质是一样的,所以可以共用相同按钮或文本等控件。

  PageGroup:表示菜单下面的各个功能项,参考Word2007“开始”菜单下的“剪贴板”功能项。每一个PageGroup里可以包含多个功能项,如按钮、文本、编辑框等等

  Quick Access:表示快捷功能键,参考Word2007“开始”上面的快捷按钮图标。(相当于03下的工具栏)

新增:

  选中Page,右键点击可以新增Page或者新增属于本Page的PageGroup。

  我们先增加一个Page,并在第一个Page下的Group里新增一个按钮button。

删除:

  点击右RibbonControl右上角的三角符号 ,选择Run Designer,

  在第一项Ribbon Items里,可看到刚才新建的Page和PageGroup,在这里选中想要删除的项目,点击上面的Remove既可。

  Quick Access的新建和删除参考上述的步骤既可。

2、转换窗体为Ribbon窗体

选择RibbonControl控件的右上角的三角符号,选择Convert Form to Ribbonform 窗体会转换为Ribbon格式

要把DX图标换成自己的,修改RibbonControl.ApplicationICon即可

不显示快速访问this.ribbonControl1.ToolbarLocation = DevExpress.XtraBars.Ribbon.RibbonQuickAccessToolbarLocation.Hidden;

3、设置外观和样式

这个可以通过拖动DXXX Components组的DefaultLookAndFeel控件到窗体设计器来设置ribbon的皮肤。(我发现13.2.8试用版会影响解决方案的其他项目,所以要慎重哦,删除了仍有影响)

也可以通过设置控件自身UseDefaultLookAndFeel=false,然后设置自己的样式和外观。4

4、单击应用程序图标弹出菜单

所以是PopupMenu,其实任何一个DropDown形式的都可以

拖动一个PopupMenu控件到窗体设计器,将ribbonControl.ApplicationButtonDropDownControl=popupMenu1

单击ApplicationButton就会出现弹出菜单了。

四、新增图片资源

  从工具箱内拖住ImageCollection控件到Form上,类似于DefaultLookAndFeel,在Form下方出现新增控件,右键点击此控件,选中Add Image,可从本地获取相关图标,我在这里新增了四个小图标,如下图所示:

  下面我想要在第一个PageGroup里的Button前面新添加一个小图标。

  (1)查看Ribbon Control的属性,将imagecollection 赋给Images属性。

  (2)选中button,查看其属性,选中ImageIndex属性,选择需要添加的图标既可。

如下图所示:

delphi Ribbon 111的更多相关文章

  1. delphi ribbon使用

    http://blog.csdn.net/davinciyxw/article/details/5604209 1.TextEditor(barEditItem)取文本 string editValu ...

  2. delphi 实现Ribbon风格的窗体

    随着office2007的兴起,微软让我们看到了Ribbon风格的窗体,现在很多软件也都开始使用Ribbon风格.那么我们如果要自己开发,应当怎么做呢?本文就是为大家解开这个疑团的. 首先,Delph ...

  3. delphi下实现ribbon界面的方法(一)

    http://www.cnblogs.com/shanmx/archive/2011/12/04/2275213.html

  4. 键盘键与虚拟键码对照表+delphi虚拟键码对应关键

    键盘键与虚拟键码对照表 字母和数字键 数字小键盘的键 功能键 其它键 键 键码 键 键码 键 键码 键 键码 A 65 0 96 F1 112 Backspace 8 B 66 1 97 F2 113 ...

  5. Delphi 的知识体系

    第一部分   快速开发的基础 第1章   Delphi 5下的Windows编程    1 1.1   Delphi产品家族    1 1.2  Delphi是什么    3 1.2.1   可视化开 ...

  6. Ribbon_窗体_实现Ribbon风格的窗体

    Ribbon_窗体_实现Ribbon风格的窗体 随着office2007的兴起,微软让我们看到了Ribbon风格的窗体,现在很多软件也都开始使用Ribbon风格.那么我们如果要自己开发,应当怎么做呢? ...

  7. Delphi xe7 FireMonkey / Mobile (Android, iOS)生成 QR Code完整实例

    这个实例在windows.OS X.IOS和Android等平台运行正常.本文参考这个网站提供的方法:http://zarko-gajic.iz.hr/firemonkey-mobile-androi ...

  8. .net平台的RSA实现以及与Delphi之间的互操作性

    .net平台下面的RSA算法实现是RSACryptoServiceProvider,如果安装了 Microsoft Enhanced Cryptographic Provider,则 RSACrypt ...

  9. Delphi中TStringList类常用属性方法详解

    TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的. 常规的用法大家都知道,现在来讨论它的一些高级的用法. 先把要讨论的几个属性列出来: 1.CommaText 2.Delim ...

随机推荐

  1. CSS float浅析

    写在开篇: 浮动属性的设计初衷,只是为了实现文本环绕效果! 时刻牢记这一点,才能正确使用浮动. 由于浮动元素脱离文档流,它后面的块级元素会忽略它的存在,占据它原本的位置,但是这个块级元素中的内联元素, ...

  2. redis 配置文件翻译

    2014年6月24日 17:29:11 include  如果有其它配置文件,可以使用 include 指令 ####通用配置 daemonize  默认的redis不会以守护进程运行,需要这样的话可 ...

  3. WebApi帮助类

    public class HttpClientBase { /// <summary> /// HttpClient实现Post请求 /// </summary> protec ...

  4. nvidia-smi 命令解读

    nvidia-smi 的定义: 基于 NVIDIA Management Library (NVIDIA 管理库),实现 NVIDIA GPU 设备的管理和监控功能 主要支持 Tesla, GRID, ...

  5. 【LOJ】#2277. 「HAOI2017」方案数

    题解 这个出题人完美诠释了什么叫 用心出题,用脚造数据 算完复杂度怎么也得\(O(o^2 * 200)\)略微跑不满,但是有8个测试点虽然有障碍但是一个障碍都不在路径上,2个测试点只有10来个点在路径 ...

  6. jquery下载,实时更新jquery1.2到最新3.3.1所有版本下载

    描述:jquery下载,实时更新jquery1.2到最新3.3.1所有版本下载 https://www.jb51.net/zt/jquerydown.htm (注意:jquery-2.0以上版本不再支 ...

  7. 014.Zabbix的Agent key

    一 常见key 1.1 监控网卡流量的key net.if.{in/out}[if,<mode>] if表示网卡接口,mode表示取值类型. mode参数:bytes(默认),packet ...

  8. 002.KVM环境部署

    一 环境准备 1.1 查看是否支持虚拟化 [root@kvm-host ~]# grep -E 'vmx|svm' /proc/cpuinfo 注意:intel为vmx,amd为svm. 1.2 确定 ...

  9. 003.NFS配置实例

    一 NFS常见服务管理 1.1 启动NFS [root@imxhy ~]# systemctl start nfs #CentOS7.x系列启动 [root@imxhy ~]# service nfs ...

  10. 一个轻巧高效的多线程c++stream风格异步日志(二)

    目录 一个轻巧高效的多线程c++stream风格异步日志(二) 前言 LogFile类 AsyncLogging类 AsyncLogging实现 增加备用缓存 结语 一个轻巧高效的多线程c++stre ...