- 浏览: 199963 次
- 性别:
- 来自: 湖南
文章分类
最新评论
-
kongyumi:
电话18800163600
初学certificate -
kongyumi:
解压密码多少?求告知
初学certificate -
船到桥头自然沉:
初学certificate -
笑海人胜:
...
JavaFX学习之Preloader -
kanjiantaiyang:
引用[img][/img][url][/url][b][/b] ...
security
这段代码是从网上看到的,开始自己写一个目录结构的时候,写的好麻烦。首先我开始时读父目录结构,然后点击展开事件的时候读取该子目录结构,其中遇到了许多问题。虽然写出来了,但是乱七八糟。看了下面这段代码,发现自己还是对类不了解。
展示树重写了TreeItem的2个方法:
getChildren(); 在展开的时候会去获取子节点,对每一个file进行一次是否有子文件判断,notInitialized即是做一次判断。有子文件,便遍历new TreeItem,并且加到该节点children里面。
isLeadf; 用于判断该节点是否是叶子节点,叶子节点没有展开箭头。
重写CellFactory方法,是对节点的内容进行改变。当cell里面的内容改变时,调用该方法。empty这个boolean是指该cell有没有与与数据关联,因为在扩大页面的时候,那些新显示出来的cell是没有值联系的,所以当为true时,赋值为null。
CheckBoxTreeItem<String>有些已经帮你写的TreeItem,就不必要自己构造了。
展示的时候出了点问题,那个文件图片显示的有点不对,没发现为什么了,代码里面明明没有做,可是显示了,希望能找出来。
后来我又加了一个判断就没出现
这里有很多javafx的小游戏,一个高手写的
http://lustrezhang.gotoip4.com/fxgame/
这里有个javafx学习的中文网站,我把内容都丢那上面去了。
http://www.jfxee.com/
package ui; import java.io.File; import javafx.application.Application; import javafx.collections.ObservableList; import javafx.scene.Scene; import javafx.scene.control.TreeCell; import javafx.scene.control.TreeItem; import javafx.scene.control.TreeView; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.HBox; import javafx.scene.layout.Priority; import javafx.stage.Stage; import javafx.util.Callback; public class TestTreeView extends Application{ ImageView iv = new ImageView(new Image(getClass().getResourceAsStream("folder_16.png"))); public static void main(String args[]){ launch(); } @Override public void start(Stage stage) throws Exception { HBox box = new HBox(); buildTree(box); stage.setScene(new Scene(box,400,800)); stage.show(); } public void buildTree(HBox box){ File file = new File("C:/"); TreeView<File> treeView = new TreeView<File>(new MyTreeItem(file)); treeView.setCellFactory(new Callback<TreeView<File>, TreeCell<File>>() { @Override public TreeCell<File> call(TreeView<File> arg0) { return new TreeCell<File>(){ @Override protected void updateItem(File f, boolean empty) { // TODO Auto-generated method stub super.updateItem(f, empty); if(empty){ setText(null); setGraphic(null); }else{ setText(f.getName()); if(f.isDirectory()){ setGraphic(iv); }else if(f.isFile()){ setGraphic(null); }else if(f.getName().endsWith("txt")){ setStyle("-fx-font-weight:BOLD"); }else{ setStyle("-fx-text-fill:#cccccc"); } } } }; } }); box.getChildren().add(treeView); HBox.setHgrow(treeView, Priority.ALWAYS); } } class MyTreeItem extends TreeItem<File>{ private boolean notInitialized = true; public MyTreeItem(final File file){ super(file); } @Override public ObservableList<TreeItem<File>> getChildren(){ if(notInitialized){ notInitialized = false; if(getValue().isDirectory()){ for(final File file:getValue().listFiles()){ super.getChildren().add(new MyTreeItem(file)); } } } return super.getChildren(); } @Override public boolean isLeaf(){ return !getValue().isDirectory(); } }
展示树重写了TreeItem的2个方法:
getChildren(); 在展开的时候会去获取子节点,对每一个file进行一次是否有子文件判断,notInitialized即是做一次判断。有子文件,便遍历new TreeItem,并且加到该节点children里面。
isLeadf; 用于判断该节点是否是叶子节点,叶子节点没有展开箭头。
重写CellFactory方法,是对节点的内容进行改变。当cell里面的内容改变时,调用该方法。empty这个boolean是指该cell有没有与与数据关联,因为在扩大页面的时候,那些新显示出来的cell是没有值联系的,所以当为true时,赋值为null。
CheckBoxTreeItem<String>有些已经帮你写的TreeItem,就不必要自己构造了。
展示的时候出了点问题,那个文件图片显示的有点不对,没发现为什么了,代码里面明明没有做,可是显示了,希望能找出来。
后来我又加了一个判断就没出现
else if(f.isFile()){ setGraphic(null); }
这里有很多javafx的小游戏,一个高手写的
http://lustrezhang.gotoip4.com/fxgame/
这里有个javafx学习的中文网站,我把内容都丢那上面去了。
http://www.jfxee.com/
发表评论
-
JavaFX学习 EventFilter
2013-01-11 10:41 3675EventFilter可以让你在事件捕捉过程中处理一些东 ... -
JavaFX学习 事件Event
2013-01-04 13:54 0常用的时间一般分为鼠标事件和键盘输入事件,看一下这些事件 ... -
JavaFX学习 自定义控件
2013-01-04 14:19 8150Control,Skin,behavior 在java ... -
JavaFX学习 位置计算
2012-12-31 15:22 1283如何得到节点在window中的位置 Point2D p ... -
JavaFX学习之Image
2013-01-11 13:53 7338ImageView and Image ImageVi ... -
JavaFX学习之Concurrent
2012-12-13 16:48 0Service Task public class ... -
JavaFX学习之Geometry
2012-12-13 16:45 0BoundingBox Bounds Dim ... -
JavaFX学习之Canvas
2013-01-15 16:20 4264Canvas and GraphicsContext ... -
JavaFX学习之Input
2012-12-13 16:39 0InputEvent Clipboard and ... -
JavaFX学习之Media
2012-12-13 16:32 0javafx支持视频和音频的播放,可以看media包下的 ... -
JavaFX学习之Paint
2012-12-13 16:29 0Paint Color ImagePatte ... -
JavaFX学习之Chart
2013-01-15 16:01 9281Chart 分piechart 和XYChart 再看看 ... -
JavaFX学习之Transform
2013-01-15 19:11 5632Transform为Node提供仿射变换,如旋转,尺度变 ... -
JavaFX学习之Effect
2013-01-14 15:53 1854Effect 抽象类,所有特殊效果的父类。 Ble ... -
JavaFX学习之Animation
2012-12-13 16:02 0Animation AnimationTimer ... -
JavaFX学习之Stage
2012-12-13 15:55 0Window Stage 刚开始的Stage由平 ... -
JavaFX学习之Web
2013-01-12 16:06 12709PopupFeatures 处理新窗口 WebHi ... -
JavaFX学习之Scene
2012-12-13 15:49 0Node setManaged(boolean va ... -
JavaFX学习之Layout
2013-01-15 16:03 12702Region 继承parent,被 ... -
JavaFX学习之Control
2012-12-13 14:25 10668Control Control类控件通常由Control, ...
相关推荐
JavaFX的TreeView组件是用于构建层次结构数据视图的强大工具,它可以用来展示树形结构的信息,如文件系统、组织结构等。在这个实例中,我们将深入探讨如何将数据库中的数据加载到JavaFX的TreeView中,创建一个动态的...
Draggable-JavaFX-TreeView 对JavaFX中TreeView的CellFactory的拖放实现,用于项目和包含子项的项目(文件夹)。 添加为依赖项: 该项目已发布到Maven Central( ),可以使用以下依赖项进行添加: <groupId>me...
javafx treeview 树形菜单一行代码渲染接口源码,通过一个sql查询结果集,调用该源码公共接口,直接渲染模型。该算法,解决了遍历的空间复杂度,时间复杂度问题,合理利用java的对象引用概念。灵活指向父子对象,...
在.NET开发环境中,TreeView控件是一种常用的用户界面元素,它以树形结构显示数据,常用于网站或桌面应用中展示层级关系的数据。本教程将详细讲解如何使用TreeView控件来绑定SQL数据库中的数据,以“treeview”表为...
JavaFX实现拖拽结点效果 JavaFX 是一个基于 Java 技术的 GUI 编程框架,它提供了一个强大的平台来开发桌面应用程序。在 JavaFX 中,实现拖拽结点效果是一种常见的用户交互方式,以下是 JavaFX 实现拖拽结点效果的...
JavaFX提供了丰富的预定义控件,如按钮(Button)、文本框(TextField)、标签(Label)、列表视图(ListView)和树视图(TreeView)等。每个控件都有独特的属性和方法,理解并熟练使用这些控件是构建用户界面的...
通过学习本书,开发者不仅可以掌握如何利用JavaFX提供的丰富UI组件来快速搭建界面,还能深入了解JavaFX API的各种特性和功能,从而更好地进行实际项目开发。此外,书中还提到了关于版权、许可以及特定情况下适用的...
### JavaFX 8 学习指南 #### 一、引言 JavaFX 是 Oracle 公司为 Java 平台提供的一套丰富的用户界面框架,它旨在替代早期的 AWT 和 Swing,提供更现代、功能更强大的图形用户界面开发工具。本书《Learn JavaFX 8》...
在JavaFX中,开发者可以利用丰富的图形用户界面(GUI)组件来构建桌面应用程序。这个教程主要关注在NetBeans集成开发环境中使用JavaFX和FXML进行...在NetBeans的辅助下,学习和使用JavaFX+FXML会变得更加高效和便捷。
这个"javafx模拟磁盘管理系统"项目涵盖了JavaFX的基本使用,文件操作,事件处理,以及UI设计等多个方面,对于学习和实践JavaFX技术是个很好的案例。开发者可以在此基础上进一步完善功能,如增加搜索、排序、过滤等...
本书《Mastering JavaFX 8 Controls》由 Hendrik Ebbers 编写,是针对 JavaFX 8 控件深入学习的宝贵资源。该书覆盖了 JavaFX 8 控件的各个方面,帮助读者从初学者成长为精通控件的专家。 #### 二、JavaFX 8 控件...
在编程领域,`TreeView`控件是常见的图形用户界面元素,尤其在Windows应用程序开发中广泛使用。它允许用户以树状结构展示数据,通常用于层级关系的表示,如文件系统、组织结构等。本篇文章将深入探讨如何通过递归...
JavaFX是Oracle公司推出的用于构建富互联网应用程序(RIA)的开源框架,它提供了一整套用于构建图形用户界面的组件和API。JavaFX的用户界面控件样式可以通过CSS(层叠样式表)进行定制。本指南为JavaFX CSS的参考资料...
通过本文档的学习,我们了解了 JavaFX UI 控件的基本使用方法。掌握了这些控件之后,你可以根据实际项目需求灵活地构建各种类型的用户界面。无论是简单的应用还是复杂的商业系统,JavaFX 都能提供所需的功能和支持,...
标题中的“IPtry_javaFx_javafx可视化ui_”表明这是一个使用JavaFX...总的来说,这个项目涵盖了JavaFX的UI设计、网络编程、多线程、数据包捕获与解析等多个方面的知识,是一个很好的学习和实践JavaFX和网络编程的实例。
接下来,我们需要创建一个JavaFX控件,如TableView或TreeView,用于显示解析后的Excel数据。这样用户就可以直观地查看和操作数据。例如,我们可以创建一个`TableView`并定义相应的列: ```java TableView[]> ...
《Learn JavaFX 8.pdf》是一本关于JavaFX 8开发的详细教材,涵盖了JavaFX编程的众多方面。JavaFX是一种用于构建富客户端应用...教材的结构和内容安排对于想要深入学习JavaFX的开发者来说,是一本非常有价值的参考资料。
4. **JavaFx实现页面**:在JavaFX中,我们可以使用`TableView`或`TreeView`展示shape文件的属性。`TableView`适合二维表格数据,而`TreeView`适用于层次结构数据。通过`CellFactory`可以自定义单元格显示。此外,...
这是『Java学习指南系列』的第19篇教程 ,是Java开发的高级课程,介绍JavaFX的入门技术。 JavaFX教程分为2篇:JavaFX入门篇 , JavaFX高级篇。 二、主要内容? 本篇介绍JavaFX的基本技术,至少包括以下方法:* 基本...
"购物车"模块则可能使用了ListView或TreeView来展示选定的菜品,同时有加减数量和结算功能。"订单管理"部分可能涉及到数据库操作,JavaFX与Java的JDBC(Java Database Connectivity)相结合,实现数据的增删改查,...