记录JavaFx中非常重要的细节,入门了也未必知道
2017-05-08 22:04
330 查看
title: 记录JavaFx中非常重要的细节
JavaFx中有一些疑难杂症,或许你以为你掌握了
JavaFx,但是也未必知道我所说的这些问题和解决方案,如果有帮助到你的,可以加群
最大最活跃的JavaFx社群:518914410欢迎访问我的个人博客www.cmlanche.com
已经解决的细节:
鼠标单击、双击以及多击事件(大于三次基本无意义)的执行。从图中看出,
单击一次执行一次,双击,执行两次,click中走了两次,一次clickcount为1,另一次为2,多击和双击同理
ComboBox<T>这个控件中的
T模板类型如果换成一个
JavaBean类型的话,控件所选择的值和列表显示什么数据呢?
如果你入门了,你告诉我,会显示
JavaBean对象中的toString()返回的值,是的,没错,但是加入这个
JavaBean是你无法更改的,又或者说你更改它会不
美观,会破坏你写代码的美感,没错,的确会这样。
然后更有经验的人会告诉我,你可以用
setCellFactory来自己定义列表的值,确实列表的值变成了你想要的值,但是你同样会发现控件所选择的值还是
toString()所表达的值。这怎么解决呢?
其实
ComboBox中有个叫
StringConverter的东西,由它完成自定义转换,示例:
public class JavaBean{ public String p1; public String p2; } ComboBox<JavaBean> combox = new ComboBox<>(); combox.setConverter(new StringConverter<JavaBean>(){ @Override public String toString(JavaBean bean){ return String.format("%s(%s)", bean.p1, bean.p2); } @Override public JavaBean fromString(String str){return null;} });
其实只要设置
StringConverter就可以了,不用设置
cellfactory,后者更多的是用来更改ui外观的
处于未知的细节问题:
是否可以自定义系统提供的标题栏,这样更加省事相关文章推荐
- C语言非常重要的细节(知道一点更新一点)
- 使用cookie设置域名(小细节未必你知道!)
- z-index的一个非常重要的细节
- 你所未必知道的关于<!DOCTYPE>标签的细节
- LSTM入门必读:从入门基础到工作方式详解 By 机器之心2017年7月24日 12:57 长短期记忆(LSTM)是一种非常重要的神经网络技术,其在语音识别和自然语言处理等许多领域都得到了广泛的应用
- 记录整理入门的JavaScript学习一些重要知识点
- 网站SEO入门必须知道的10个重要技巧
- Linux系统编程重要细节记录(持续更新中)
- Xcode7.1上安装最新的Alcatraz,细节非常重要!!!
- 你所未必知道的关于<!DOCTYPE>标签细节
- C/C++编程细节(一)——你未必知道
- 技术 | 入门机器学习必须知道的6件事,你可未必都了然于心了
- ASP编程入门进阶(二十):ADO组件之查询数据记录
- 伴随开发人员成长的问题:工程重要,还是算法重要?细节重要,还是架构重要?
- 第一章:你首先需要知道的(面向对象入门)
- ASP编程入门进阶(二十):ADO组件之显示数据记录
- TFS CMMI模板体验(1),需求细节达成一致比较重要
- Struts入门文章系列[非常不错]
- ASP编程入门进阶(二十):ADO组件之修改数据记录
- 伴随开发人员成长的问题:工程重要,还是算法重要?细节重要,还是架构重要?