这次我对JMetro进行了重大更新。 3.8版引入了以下新的Fluent Design (FDS)启发风格(深色和浅色)和更新:

  • 新的单选按钮样式;
  • 复选框的新样式;
  • 菜单的新样式;
  • 更新了上下文菜单的样式;
  • 选择框的新样式。

JMetro新版本详细信息

我决定暂时关闭对JMetro示例的关注。 不过,我仍然将控件的样式设置为看起来不错,并且在聚焦时具有鲜明的外观。 之所以这样做,是因为聚焦环在Windows 10中的功能与其默认情况下在JavaFX应用程序中的功能有所不同。

在JavaFX应用程序中,每当您按一下该控件时,该控件就会获得焦点(添加focused伪类),而在Windows中,您需要先按Tab键或箭头键(在某些情况下)才能激活聚焦系统,使聚焦环出现,然后循环浏览直到找到所需的控件。

这是有道理的,因为这样,仅当用户确实确实希望通过使用键盘与应用程序进行交互时才显示聚焦环,否则避免了这种干扰。

您仍然可以在JavaFX中保持这种行为,只需要对其进行编码即可。 我还不知道Mac OS的新版本在这方面如何工作(我没有最新的Mac可以对此进行测试),但是将来可能会添加到JMetro中。

单选按钮新样式

以下动画显示了单选按钮的新样​​式和旧样式:

单选按钮OLD JMetro灯光样式

单选按钮NEW JMetro灯光样式

单选按钮OLD JMetro深色样式

单选按钮新JMetro深色风格

复选框新样式

复选框已发生重大变化:

复选框OLD JMetro灯光样式

复选框新JMetro灯光样式

复选框OLD JMetro深色样式

Check Box NEW JMetro深色款

自从更改复选框以来,为了保持一致性,我还需要在提供新版本之前更改所有其他使用复选标记的控件。 这些控件是“选择框”和“菜单”。

新选择框样式

如前所述,这不是Fluent Design规范中存在的控件。 它仅存在于JMetro中。

Choice Box OLD JMetro灯光风格

Choice Box NEW JMetro灯光风格

Choice Box OLD JMetro风格

Choice Box NEW JMetro深色款

新菜单样式

此样式是新添加的。 这是JMetro中仅存在的另一个。 它在Fluent设计系统规范中不存在,至少目前还不存在。

此样式包括菜单栏和打开菜单栏时显示的菜单项,它们本身可以是“复选框菜单项”或“无线电菜单项”类型的菜单项(在菜单项中只能选择一个RadioMenuItem 。相同的ToggleGroup )。

在下面的示例中,“图片效果”子菜单包含RadioMenuItem类型的MenuItemsRadioMenuItem都属于同一个ToggleGroup, “视图”菜单包含CheckMenuItem类型的MenuItems ,它们的工作方式与CheckBox非常相似。

菜单JMetro灯光样式

菜单JMetro深色风格

新的上下文菜单样式

菜单和上下文菜单是相互链接的。 两者都使用MenuItems作为其内容。 因此,在创建新的菜单样式时,我希望有机会再次更新上下文菜单样式。

我更改了按下和悬停样式,还通过减小菜单项的高度使MenuItems变得更加紧凑。 在以前的JMetro版本中,我的意图是使触摸目标足够大,以便可以在不更改触摸设备和基于鼠标的设备(台式机和笔记本电脑)的情况下使用该应用程序。

事实证明,这并不是最佳策略,因为基于鼠标的设备的用户最终使用的软件并未针对其系统进行优化,而控件占用了过多的空间并浪费了屏幕空间。 这在生产力应用中尤其重要。

由于这些原因,JMetro现在针对基于鼠标的系统进行了优化,其控件仅占据了它们需要占用的空间。 每当应用程序开发人员需要在基于触摸的设备(电话,平板电脑等)中分发其应用程序时,他们只需通过每个控件(仅需要它的控件)CSS重新配置高度即可满足触摸的需要。目标尺寸。 这样,他们只需花费一点点编程即可获得针对基于触摸的设备和基于鼠标的设备进行了优化的应用程序。

将来,我可能会添加一个“触摸”样式类,开发人员可以轻松切换该类,以将控件切换为基于触摸的优化或“鼠标”的优化。

以下是新的和旧的“上下文菜单”样式(版本3之前)的动画。 旧样式只有一个版本:

上下文菜单OLD JMetro深色样式

这是此JMetro版本中的新样式:

上下文菜单NEW JMetro灯光样式

上下文菜单NEW JMetro深色样式

包起来

这是对JMetro的重大更新,总共增加了5种样式,包括深色和浅色版本。 新样式已添加到:单选按钮,复选框,选择框,菜单和上下文菜单。

JMetro现在为SDK附带的几乎所有JavaFX控件提供了样式。 它还添加了默认情况下不存在的新样式和新控件。

新版本专注于优化每个平台的屏幕空间。 在基于鼠标的设备(笔记本电脑,台式机)中更紧凑,在基于触摸的设备中更大的控件。 开发人员仍然需要配置每个控件CSS(需要它们的人),但是在将来的版本中可能会更容易。

我仍然没有更新文档 ,我将在以后的几天中进行更新。

与往常一样,如果您想了解最新信息并且不要错过,请订阅此博客并在Twitter上关注我。

这是我下一步计划的:

  • 拨动开关的新样式;
  • 滑块的新样式;
  • Button的新样式(包括新动画);
  • 轻松指定控件的颜色;
  • 等等。

翻译自: https://www.javacodegeeks.com/2018/07/fluent-design-java.html

Fluent Design单选按钮,复选框,选择框,Java菜单相关推荐

  1. 选下拉框的的值对应上传相应的图片_vue.js如何拿到多种类型表单值提交到后台,包含上传图片、单选、复选、文本框、下拉列表框...

    2016-01-17 编辑更新 vue.js如何拿到多种类型表单值提交到后台,包含上传图片.单选.复选.文本框.下拉列表框 下面的html包括多种类型的表单,其中包括图片上传,如何拿到这些表单的值提交 ...

  2. 【js】复选框,复选下拉框,文本框勾连

    [js]对常见事件的一个总结 ps: 内容涉及(kendo Ui, jQuery) 如下图所示:要求实现功能点 (1)用户名(复选下拉框,可选择多个)和用户名(文本输入框)相勾连 复选下拉框改变,文本 ...

  3. Qt实现复选下拉框 C++

    文章目录 一.QListWidget+QListWidgetItem 二.activate(int) 总结 一.QListWidget+QListWidgetItem 实现QComboBox下拉框复选 ...

  4. jQuery插件imageTick实现复选和单选框转化为图片

    使用说明 需要使用jQuery 库文件和imageTick 库 文件[在线演示 ][下载 ] 使用实例 一,包含文件部分 <script type="text/javascript&q ...

  5. html语言中复选按钮,命令按钮单选按钮复选按钮

    命令按钮.单选按钮.复选框上都有Picture属性,可选项: a.Appearance属性 b.Style属性 c.DisabledPicture属性 d.Downb. VB实现点击命令按钮将对单选( ...

  6. VC++中按钮,文本框,选择框的常用方法

    2005年8月13日21:57:44 --------------------------------------------------------------------------------- ...

  7. 小程序开发之各种弹出框选择框汇总

    小程序开发过程中,很多地方为了便利我们多采用小程序自带弹出框来实现交互效果.这也够大多数开发使用,下面我给大家详细介绍下小程序弹出框 官方api传送门:https://developers.weixi ...

  8. eazy ui 复选框单选_UI备忘单:单选按钮,复选框和其他选择器

    eazy ui 复选框单选 重点 (Top highlight) Pick me! Pick me! No, pick me! In today's cheat sheet we will be lo ...

  9. Java知多少(87)选择框和单选按钮(转)

    选择框.单选框和单选按钮都是选择组件,选择组件有两种状态,一种是选中(on),另一种是未选中(off),它们提供一种简单的 "on/off"选择功能,让用户在一组选择项目中作选择. ...

最新文章

  1. 基于角色的访问控制(RBAC)
  2. matlab 三维饼图,重新学习MATLAB——作图技法及3D可视化
  3. echart 实例显示位置_技术分享:如何在Unity中使用实例化渲染?
  4. 【转载】IT新曙光——“遇事不决,量子力学” 的问与答
  5. Windows Moible, Wince 使用.NET Compact Framework的进行蓝牙(Bluetooth)设备配对的开发
  6. 大型情感剧集Selenium:9_selenium配合Pillow完成浏览器局部截图
  7. 谷歌推出TFGAN:开源的轻量级生成对抗网络库
  8. 6. 添加权限管理模块
  9. Linux自学笔记——tcp wrapper
  10. java第五周课后作业
  11. 刘知远老师为你解读:自然语言理解到底难在哪儿?
  12. 关于嵌入式EMW3162 Wifi模块的网络配置与测试
  13. ThinkPHP核心框架目录结构
  14. 济南商讯在线计算机,迅时IP话机 NRP2000W
  15. 做软件开发,客户难找?接单难?怎么办?
  16. HEVC新技术(一):基于MVC的AMVP技术
  17. Catching Cheaters
  18. 最新WIN10 64位21H2正式版19044.2006
  19. 向六种植物学习创业的真谛
  20. 一元泰勒展开式的理解

热门文章

  1. 【期望】期望收益(金牌导航 期望-3)
  2. Java 0xffffffff隐式类型转换的坑
  3. Java se之动态代理
  4. MySQL 的索引是什么?怎么优化?
  5. 使用ueditor实现多图片上传案例——ServiceImpl层(ShoppingServiceImpl)
  6. JAVA多线程总结(笔记)
  7. 19年8月 字母哥 番外篇:周边技术生态
  8. 什么叫做在oracle目录下,ORACLE directory 目录
  9. 中海达手部链接电脑安装软件_山东水文局:较大含沙量条件下中海达ADCP外接测深仪测流系统试验成功...
  10. sqlserver安装教程