RibbonControl中的主题设计
Ribbon+扁平化
据调查,其实人们可能最多只用到全部 Office 功能的 5%,为此,微软交互式团队推出了Ribbon风格,一时间,很多软件升级后都换成了Ribbon界面;扁平化其实不是新东西,但Windows 8了引领扁平化风潮,又一时间,很多软件也开始扁平。其实,风格的改变一方面是为了审美,另一方面更重要是为了简化,更人性化,让用户来学得更快,用得更好,所以,内容的简化也是一项同样非常重要的工作。
在应用程序开发中,我们经常换用不同的主题,但很少换背景,今天来尝试一下背景的切换,让程序更个性化,如下图为Office的"春天"背景,给人草长莺飞的意境……
实现效果
下面的背景是自定义的图片,基本达到类似Office的效果。
Visual Studio 2012风格:
Metro风格:
Office2016彩色风格:
实现方法
主要在设置BackgroundImage的背景,其大小是500*60,当然,你也可以适当调整宽度。BackgroundImageStock为内置的风格(默认将图片以十六进制直接写在资源文件里),种类比较多,并不是所有主题图片都符合应用程序,所以需要自定义图片。
在自定义图片时,除了注意大小外,还要设置好颜色,颜色拾取的是RGB29,29,29,但还在调整不透明度和填充才能达到即不突兀又能适合多种主题的效果。(仔细看,下面的视图窗口是有图片的)
可以根据实际的主题,定义相应的素材,软件设计也是一种设计!
RibbonControl中的主题设计的更多相关文章
- 看懂此文,不再困惑于 JS 中的事件设计
看懂此文,不再困惑于 JS 中的事件设计 今天刚在关注的微信公众号看到的文章,关于JS事件的,写的很详细也很容易理解,相关的知识点都有总结到,看完就有种很舒畅的感觉,该串起来的知识点都串起来了.反正一 ...
- JS 中的事件设计
看懂此文,不再困惑于 JS 中的事件设计 原文出处: aitangyong 抽空学习了下javascript和jquery的事件设计,收获颇大,总结此贴,和大家分享. (一)事件绑定的几种方式 ...
- Gtk-WARNING**:无法在模块路径中找到主题引擎:“pixmap”的解决
Gtk-WARNING**:无法在模块路径中找到主题引擎:“pixmap”的解决 解决以上问题, 只需要安装 gnome-themes-standard 即可 如果终端中提示: (gvim:23 ...
- 推荐一款基于Angular实现的企业级中后台前端/设计解决方案脚手架
ng-alain 是一个企业级中后台前端/设计解决方案脚手架,我们秉承 Ant Design 的设计价值观,目标也非常简单,希望在Angular上面开发企业后台更简单.更快速.随着『设计者』的不断反馈 ...
- Ceph中Bufferlist的设计与使用
转自:https://www.ustack.com/blog/bufferlist/ 如果非要在整个Ceph中,找出一个类最重要,我觉得非Bufferlist莫属了,原因很简单,因为Bufferlis ...
- mysql中数据库的设计
软件开发流程(CMMI): 1):项目启动; 2):项目计划: 3):需求分析; 需要得到的结果是什么? 4):系统设计; 该怎么做? 5):系统开发; 6):系统测试; 7):系 ...
- 在Eclipse中使用WindowBuilder设计Swing程序
在Eclipse中使用WindowBuilder设计Swing程序 Swing程序表示Java的客户端窗体程序,除了通过手动编写代码的方式设计Swing程序之外,Eclipse中还提供了一种W ...
- Java实现图形界面的三部曲及IDE中的窗口设计
设计和实现图形用户界面的工作主要有以下几点: • (1)创建组件(Component) • 创建组成界面的各种元素,如按钮.文本框等.• (2)指定布局(Layout) • 根据具体需要排列它们的位置 ...
- 多测师_高级肖sir分享pycharm中设置主题和设置代码颜色方法
一.修改pycharm中的主题颜色 二.修改代码颜色 File-->Settings-->Editor--> Color Scheme-->Language Defaults- ...
随机推荐
- git 自动转换行符的坑爹案例
本人写的脚本都是在unix上运行的,但是编写有时候喜欢使用Git拉去到windows的ide进行编写,毕竟我的unix只有命令行的没有ide, 殊不知有一天我的sh执行时出现错误 -bash: ./d ...
- 在ASP.NET MVC中通过勾选checkbox来更改select的内容
遇到了这样的一个需求:通过勾选checkbox来更改select的内容. 在没有勾选checkbox之前是这样的: 在勾选checkbox之后是这样的: 想通过ajax异步来实现.所以,从控制器拿到的 ...
- netty 支持多种通讯协议
通讯协议,指的是把Netty通讯管道中的二进制流转换为对象.把对象转换成二进制流的过程.转换过程追根究底还是ChannelInboundHandler.ChannelOutboundHandler的实 ...
- SIP SDP Profile-level-id解析
转自:http://blog.csdn.net/wh8_2011/article/details/53558504 基于SIP协议的VOIP通信,该字段通常位于视频协商sdp报文中,如: video ...
- Java POI 3.17导出EXCEL并下载(带进度条提示)
导出数据 共4590条 只需要 5 秒左右,性能还算可以 我们再来测试一下 50000 条的性能...
- byte数组怎么存放到Json中传递
可以把byte[]序列化成base64字符串后,再放json里传输就可以了.不需要考虑每个字节转成一个字符存到json字符串里. String str = Base64.encodeToString( ...
- 64位Windows操作系统中的注冊表
x64系统上有x64.x86两种注冊表,记录下. 64 位Windows系统中的注冊表分为 32 位注冊表项和 64 位注冊表项.很多 32 位注冊表项与其对应的 64 位注冊表项同名. 在64位版本 ...
- TextView字体,行距,html格式,超链接,最大长度的设定
颜色,大小 <!-- 设置字体的大小,推荐用sp做单位:字体颜色以#开头 --> <TextView android:id="@+id/textView1" an ...
- springboot 表单校验
实体: @Entity public class User implements Serializable { /** * 编号 */ @Id @GeneratedValue private Long ...
- [Ubuntu] fg、bg让你的进程在前后台之间切换
refer to : http://man.linuxde.net/jobs Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行.比如一个需要长 ...