JavaFX 8的弹出式编辑器

在过去的几个月中,我很高兴与JavaFX 8一起使用,以便为计划和调度应用程序实现复杂的用户界面。 所需的功能之一是执行“就地”编辑的方法,即快速编辑用户选择对象的某些基本属性的方法。

遵循“如果您无法创新,就模仿”的原则,我了解了Apple如何做这些事情,并且iCal确实向我展示了我需要知道的一切。

iCal –榜样

在iCal中,当用户双击事件时,将显示以下“弹出窗口”。

ical-11

此时,弹出窗口将显示各个设置组的摘要。 第一组涵盖与事件时间,警报设置和全天标记有关的所有内容。 第二小组与参与者打交道,第三小组与笔记,附件和网络链接打交道。

用户单击三个摘要之一后,弹出窗口将显示用于更改设置的控件。 这种方法降低了UI的复杂性,并使用户更容易专注于对他真正重要的信息。

ical-21

另一个简洁的功能是可以撕下弹出窗口的选项。 当用户将弹出窗口拖动到远离事件的位置时,箭头将消失,然后弹出窗口将变为独立的实用程序窗口(请参见下面的屏幕截图)。 这可以执行多次,以便用户可以并行使用这些窗口中的几个。

ical-3

JavaFX –竞争者

我很高兴得知,将透明窗口和粘贴到父窗口的子弹出窗口之类的东西对JavaFX 8来说是小菜一碟,而开发人员所面临的Swing问题已一去不复返了。 我的工作结果是产生了如下所示的控件的5个类。

javafx-1

PopupEditor控件是具有自己的样式表的自定义控件。 它的整个外观可以通过CSS进行控制。 标题和副标题是文本字段,可以进行编辑(“样式化”边框和背景)。 完整的页眉和页脚(带有“删除”按钮)是可替换的节点。

弹出窗口中的不同部分是手风琴控件中“ TitledPane”的子类。 为了使窗格有时显示常规标题文本,有时甚至在带有节摘要的图形节点(上面的屏幕截图仅显示常规标题文本),需要进行子类化。

当标题窗格扩展或折叠时,弹出窗口会自动调整大小。

javafx-2

就像在iCal中一样,用户可以通过在弹出窗口背景内的任何位置开始拖动来撕下弹出窗口。 一旦箭头不再指向“拥有”节点(在上例中为红色按钮),该箭头将消失。 当用户释放鼠标按钮时,弹出窗口将变为常规窗口(可以指定新窗口的类型(实用,透明,修饰等)。)

javafx-3

以下屏幕快照显示了我需要的计划应用程序中正在运行的弹出编辑器。

甘特弹出

这是一个小视频,显示了一些严重的编辑操作:


参考: Pixel Perfect博客上来自我们JCG合作伙伴 Dirk Lemmermann的JavaFX 8弹出式编辑器 。

翻译自: https://www.javacodegeeks.com/2013/12/a-popup-editor-for-javafx-8.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/365884.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

flex实现水平居中和两栏布局

<!DOCTYPE html> <html xmlns"http://www.w3.org/1999/xhtml"> <head> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/><title>水平垂直的实现</title><style>.wrapper{width:25…

opencv 多线程加速_线程池给你写好了,想加速拿来用就行哈

图像拼接实现见&#xff1a;OpenCV源码系列|图像拼接1OpenCV源码系列|图像拼接2耗时在调用函数&#xff1a;Mat pano; Ptr stitcher Stitcher::create(mode); Stitcher::Status status stitcher->stitch(imgs, pano)能否将这一步放进线程池里进行加速呢&#xff1f;1. 测试…

poping 心法

音乐 01.Eamon - (How Could You) Bring Him Home02.The Pussycat Dolls - Buttons03.Most Wanted ft. Fingazz, Volture -From Juvi To The Penitentiary (Instrumental)04.Kaila Yu - Move05.Danity Kane - Show Stopper06.Slick Dogg - Bang On m07.Danity Kane - Show Stop…

html5 video修改默认样式,HTML5中将video设置为背景的方法

主要用到了video标签&#xff0c;css样式&#xff0c;原理是先将video标签利用position:fixed;使video标签脱离文档流&#xff0c;在将他的z-index设置为最低的&#xff0c;比如-9999。再插入的内容自然就覆盖在视频上面了。1.首先&#xff0c;将video插入到网页中&#xff0c;…

ES6语法的学习与实践

ES6是JavaScript语言的新一代标准&#xff0c;是ECMAScript的第六个版本&#xff0c;加入了很多新的功能和语法&#xff0c;在很多框架&#xff0c;如在使用Vue,React等框架的项目中一般都采用ES6语法来编写的&#xff0c;下面对经常用到的ES6语法做简要的介绍。 1.let,const l…

这是一次 docker 入门实践

前言 其实接触 docker 也有一段时间了&#xff0c;但是一直没有做下总结&#xff0c;现在网上关于 docker 的介绍也有很多了&#xff0c;本着好记性不如烂笔头的原则&#xff0c;还是自己再记录一波吧。 实现目标 安装 docker ce 探索 docker 基本概念及用法环境准备 Centos7 6…

html dom概念,js学习之HTML DOM的一些基础概念

经过近一个星期,总算把w3chool上的HTML DOM的实例差不多看了一遍,因为本身对其中的很多都用过,所以看起来也很快,现在就再系统的回顾下HTML DOM的一些概念和基础的东西,大部分都是从w3school上看到的什么是DOMDOM是w3c(万维网联盟)的标准DOM定义了访问HTML和XML的标准"W3C…

关于Java垃圾收集

本文讨论的是使用的最受欢迎的框架之一带来的开销–我敢打赌&#xff0c;几乎没有应用程序不使用java.util.Collections。 本文基于以下事实&#xff1a;框架为例如集合的初始大小提供了默认值。 因此&#xff0c;我们有一个假设&#xff0c;即大多数人不会费心地自行管理其收…

ansys命令流_ANSYS命令流建模3之划分单元+施加弹簧

以马蹄形隧道为例&#xff0c;本文介绍如何添加荷载等隧道如上图所示!设置线单元材料属性&#xff0c;划分单元(二衬单元)lsel,s,,,1,6 !LSEL,Type,Item,Comp,VMIN, VMAX,VINClATT,1,1,3 !给线单元付材料号、实常数、单元类型号 LATT, MAT, REAL, TYPE, ESYSMSHKEY,1 …

Linux 系统中用户切换(su user与 su - user 的区别)

1,su命令 &#xff08;su为switch user&#xff0c;即切换用户的简写&#xff09; 格式&#xff1a;su -l USERNAME&#xff08;-l为login&#xff0c;即登陆的简写&#xff0c;其中l可以省略&#xff09; 如果不指定USERNAME&#xff08;用户名&#xff09;&#xff0c;默认即…

正则表达式常用方法

RegExp对象中的方法 1&#xff0c;test()方法用于检测一个字符串是否匹配某个模式&#xff0c;如果字符串中含有匹配的文本&#xff0c;则返回 true&#xff0c;否则返回 false。 reg规定匹配以a开头的字符串&#xff0c;利用test进行测试&#xff0c;字符串str满足reg匹配规则…

python安装哪个版本好啊_windows10安装哪个版本的Python?

python2除了一些大公司历史遗留问题还在使用&#xff0c;目前中小创公司使用最多的是python3 大公司的一些新项目也开始用python3了 目前来说&#xff0c;python3.5以上的版本都可以 目前使用最多的是python3.7&#xff08;建议你安装这个&#xff09; 最新的是python3.8&#…

mongose + express 写REST API

一、准备工具 先确保电脑已经安装好nodejs 1.mongoose&#xff1b;安装非常简单: npm install mongoose --save 【mongoose封装了mongodb的方法&#xff0c;调用mongoose的api可以很轻松的对mongodb进行操作】 2.express&#xff1b;npm install express --save …

js实现html模板继承,理解JavaScript中的原型和继承

本文主要讲了原型如何在JavaScript中工作&#xff0c;以及如何通过[Prototype]所有对象共享的隐藏属性链接对象属性和方法&#xff1b;以及如何创建自定义构造函数以及原型继承如何工作以传递属性和方法值。介绍JavaScript是一种基于原型的语言&#xff0c;这意味着对象属性和方…

骁龙660是32位还是64位_高通发布骁龙 7c/8c 芯片,以后你可能会在电脑上看到它...

高通的芯片生意早已不局限于移动设备领域&#xff0c;而是进一步深入至 PC 市场。相比强调性能的 X86 芯片&#xff0c;以高通骁龙为代表的 ARM 系芯片则希望突出自己的优势&#xff0c;即更长的电池续航、无风扇设计和全天候的蜂窝网络连接。在骁龙技术峰会的第三天&#xff0…

css3之盒模型

什么是盒模型&#xff1f; css中的每个元素都是一个盒模型&#xff0c; 包括html body元素&#xff0c; 浏览器解析css的时候也会把每个元素看成一个盒子来解析。 盒模型具备的属性有&#xff1a; content 、padding 、margin、border 、background等 盒模型的分类&#xff1…

学计算机的误解,让人误解的六大专业

原标题&#xff1a;让人误解的六大专业隔行如隔山&#xff0c;很多人喜欢看名字猜专业&#xff0c;所以导致很多大学专业被人误解。其实了解一个专业不能仅仅凭借它的名字&#xff0c;也不能断章取义&#xff0c;只取片面意思。接下来就让我们来了解一下有哪些被人误解的专业吧…

杂项:轮询

ylbtech-杂项&#xff1a;轮询1.返回顶部 1、轮询&#xff08;Polling&#xff09;是一种CPU决策如何提供周边设备服务的方式&#xff0c;又称“程控输出入”&#xff08;Programmed I/O&#xff09;。轮询法的概念是&#xff0c;由CPU定时发出询问&#xff0c;依序询问每一个周…

js和css实现手机横竖屏预览思路整理

实现效果&#xff0c;如上图。 首先&#xff0c;实现手机页面在PC端预览&#xff0c; 则先在网上找到一个手机的背景图片&#xff0c;算好大概内间距&#xff0c;用来放预览的页面&#xff0c;我这里是给手机预览页面的尺寸按iphone5的尺寸来的&#xff1b; 一个手机页面在这里…

thinkphp日志泄漏漏洞_【Windows高危漏洞预警】CVE20200601,影响关键加密功能

一、事件报告2020年伊始&#xff0c;NSA发现了一个影响Microsoft Windows加密功能的严重漏洞(CVE-2020-0601)。证书验证漏洞允许攻击者破坏Windows验证加密信任的方式&#xff0c;并且可以启用远程代码执行。该漏洞会影响Windows 10和Windows Server 2016/2019以及依赖Windows的…