首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

删除JavaFX TreeItem有时会更改TreeTableView选择

在JavaFX中,TreeTableView是一个可展开和可折叠的树形结构表格控件,而TreeItem则是TreeTableView中的每个节点。当我们在TreeTableView中选择某个TreeItem时,有时候需要删除该TreeItem,但是删除TreeItem可能会导致TreeTableView的选择发生变化。

要删除JavaFX TreeItem并确保TreeTableView选择不会更改,可以按照以下步骤进行操作:

  1. 获取当前选中的TreeItem:使用TreeTableView的getSelectionModel()方法获取SelectionModel对象,然后使用getSelectedItem()方法获取当前选中的TreeItem。
  2. 获取当前选中的TreeItem的父节点:使用TreeItem的getParent()方法获取当前选中的TreeItem的父节点。
  3. 从父节点中移除当前选中的TreeItem:使用父节点的getChildren()方法获取子节点列表,然后使用remove()方法从列表中移除当前选中的TreeItem。
  4. 更新TreeTableView的选择:使用TreeTableView的getSelectionModel()方法获取SelectionModel对象,然后使用clearSelection()方法清除当前的选择,最后使用select()方法选择之前选中的TreeItem。

下面是一个示例代码,演示如何删除JavaFX TreeItem并确保TreeTableView选择不会更改:

代码语言:java
复制
// 获取当前选中的TreeItem
TreeItem<String> selectedItem = treeTableView.getSelectionModel().getSelectedItem();

if (selectedItem != null) {
    // 获取当前选中的TreeItem的父节点
    TreeItem<String> parentItem = selectedItem.getParent();

    if (parentItem != null) {
        // 从父节点中移除当前选中的TreeItem
        parentItem.getChildren().remove(selectedItem);

        // 更新TreeTableView的选择
        treeTableView.getSelectionModel().clearSelection();
        treeTableView.getSelectionModel().select(selectedItem);
    }
}

这样,当删除JavaFX TreeItem时,TreeTableView的选择将保持不变。

关于JavaFX TreeTableView和TreeItem的更多信息,您可以参考腾讯云的JavaFX文档和相关产品:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • JavaFX 11发行说明

    介绍 以下记录描述了有关此版本的重要更改和信息。在某些情况下,该说明提供了有关问题或更改的其他详细信息的链接。 从JDK 11开始,JavaFX模块与JDK分开提供。...删除了功能和选项 删除对libavcodec 53和55的支持 FX Media对libavcodec 53和55的支持已被删除。默认情况下,这些库不在受支持的Linux平台上,并且不再需要。...VirtualFlow中的内存泄漏 无障碍 JDK-8204336 当嵌套事件循环处于活动状态时,Platform.exit()会抛出ISE 应用程序生命周期 JDK-8089454 [HTMLEditor]选择删除...CENTER对齐 控制 JDK-8154039 选择TabPane :: getTabs()中未包含的选项卡时内存泄漏 控制 JDK-8157690 [TabPane]排序选项卡使选项卡选择菜单为空 控制...8208622 使用html表单控件调用print API时出现[WebView] IllegalStateException web JDK-8209049 Cherry挑选GTK WebKit 2.20.4更改

    6.6K60

    Java JDK 11:现在可以使用所有新功能

    删除了CORBA,Java EE和JavaFX支持,但添加了十几个主要新功能 目录 哪里可以下载JDK 11 Java 11 JDK中的新功能 从Java JDK 11中删除了什么 Java Development...Java Standard Edition(SE)版本11有16个主要功能更改。...Java 11还通过删除CORBA和Java EE (最近更名为Jakarta EE)模块以及删除JavaFX而失去了一些功能 ,JavaFX现在可作为独立技术使用。...推送到jdk / jdk或jdk / client的更改将被标记为JDK 12。稳定存储库可以接受选定的错误修复,如果获得批准,则可以做为JDK发布过程中的后期增强功能。...JavaFX正在被删除,因此它与Java JDK的两年更新计划无关。 Oracle表示,将JavaFX作为独立的模块将使其更容易采用并为新贡献者扫清障碍。

    2K40

    回顾Java 8 9 10的新特性,展望即将来临的11和明年的12【大牛经验】

    新的 UI 控件包括 DatePicker 和 TreeTableView 控件。 javafx.print 程序包为 JavaFX Printing API 提供了公共类。...请参阅 javafx.scene.shape.Shape3D、javafx.scene.SubScene、javafx.scene.paint.Material、javafx.scene.input.PickResult...要找到资源,有两种类型的方法可以从——getSystemResource*和getResource*中进行选择。...对 Java 语言规范的更改 这里还有一些更改,但主要是为了支持局部变量类型推断。 第3.8节:标识符(第23页)。在忽略了可忽略的字符之后,标识符的等价性现在被考虑了。这似乎是合乎逻辑的。...JDK 11删除的功能 Java EE和CORBA模块从Java SE9就成了不推荐使用(deprecated),并计划在未来的版本中删除。这个未来版本就是JDK 11。

    3.3K30

    JavaFX之Scene Builder的使用(开发一款GUI小工具原来这么简单)

    的博客 欢迎大家加入,一起交流学习~~ 一、前言 首先声明一下,Java的强项并不在GUI上,现在是web的天下,博主发此篇文章仅是个人兴趣,如果您是学Java开发的,业余想做GUI小工具,可以选择使用...JavaFX。...如果需要开发企业级应用,推荐还是用qt或者wpf那些,用Electron也是很好的选择。...三、Scene Builder的使用 下载完后打开,选择Basic Application就行,助于理解 打开完后应该是这个界面 中间的就是咱们要设计的桌面程序的UI界面了,左边Library就有JavaFX....然后就会弹出如下界面,也就是刚刚介绍过的SceneBuilder 4.3 自定义界面 下面随意做个栗子: 1.随便拉一个button控件到白色区域 2.然后可以在右边的properties属性栏更改这个按钮的样式

    9.3K31

    图片内容管家 (把文字隐藏到图片里)

    最近学习 javafx 自己编写了一款软件  (网上虽然也有类似功能的软件,但是界面不够美观,功能比较单一,或者操作比较复杂) 软件官方网址:http://pcm.chujianyun.com 注:...下载地址) 功能简介: 一款颇具创意的javafx应用软件。 可以在图片放入和编辑: 电影下载链接、电影番号、学习资料网址、告白情诗、记录心情笔记等。 支持链接一键在浏览器打开,支持内容的导出。...6 删除功能 一键删除 点击每行对应后面的 删除按钮即可删除该项。 也可以选中多个后,一键删除选中。...7 密码功能 安全加密 可以在“安全”菜单栏下面 选择 设置密码 重置密码 或者 清空密码 8 一键导出 贴心便捷 在“文件”菜单下可以选择 导出全部、导出选中的内容 等

    3.4K20

    Java 近期新闻:JDK 20的JEP提升为Targeted状态,亚马逊云科技推出Lambda SnapStart特性

    该 JEP 更新自 JEP 405,记录模式(预览版),更新包括:增加了对通用记录模式类型参数推断的支持;增加了对记录模式出现在增强 for 语句条件判断中的支持;并删除了对命名记录模式的支持。...需要注意的是,除了少量在 JDK19 中被固化的 JEP 425 API 外,本预览版本没有进行任何更改,因此没有在第二次预览中提出。...JavaFX 20 JavaFX 20早期访问构建版本中的第 10 版已提供给 Java 社区。...JavaFX 专为使用 JDK 20 早期访问构建版本而设计,应用程序开发人员可以在 JDK 20 上使用 JavaFX 20 构建和测试其应用程序。...该版本还加强了对跨源资源共享(CORS)的处理,包括在 CORS 请求因来源无效而被拒绝时将 200 OK 更改为 403 FORBIDEN 。

    1.5K20

    如何使用MapTool构建交互式地牢RPG 【Gaming】

    更新JavaFX MapTool需要JavaFX,但是Java维护人员最近停止在Java的下载中捆绑它。这意味着,即使安装了Java,也可能没有安装JavaFX。...一些发行的Linux版本提供了JavaFX包,因此如果您试图运行MapTool并获得有关JavaFX的错误,请下载最新的自包含版本: 对于 基于Ubuntu and other Debian的系统 对于...调整网格时,可以更改网格线的颜色以供自己参考。以像素为单位设置单元格大小。单击并拖动以将地图工具的栅格与地图的栅格对齐。...如果您犯了错误,或者有人持有他们的操作并更改了计划顺序,请单击并拖动“计划”面板中的标记以对其重新排序。 在战斗中,单击“开始”面板左上角的“下一步”按钮,进入下一个角色。...选择一个标记并单击HPTracker按钮。输入要从标记中扣除的点数,单击“确定”,然后观察运行状况栏的更改情况以反映标记的新状态。 这似乎是一个简单的改变,但在激烈的战斗中,这是通GM的最大的武器。

    4.4K60

    Windows环境下JDK安装与环境变量配置详细的图文教程

    我这里选择:jdk-8u25-windows-x64.exe 注意区分: Java SE Development Kit 8u25 Java SE Development Kit 8u25 Demos...and Samples Downloads JavaFX Demos and Samples Downloads 第一个 java se开发包 第二个 java se开发包+示例 第三个 javaFX...开发包和示例 第一个是必须的配置Java开发环境的 二、方法/步骤 1.安装JDK,JRE, 选择安装目录 安装过程中会出现两次 安装提示 。...(3)选择安装路径,然后点击下一步。 默认是在C盘。我这里选择的是D盘。路径为:D:\Java\jdk1.8.0_25\ ? (4)等待安装结束之后。选择JRE安装的路径,点击下一步。...默认会选择C盘。 ? 等待安装完成。 ? (5)JRE的安装 ? (6)我这里选择D盘。选择更改的时候,先在硬盘里面建一个文件夹。因为在选择的时候它不给新建。

    16.9K30

    Java 17:和遗留 25 年的漏洞 Say Goodbye

    更重要的是,在你的应用程序源代码中可能需要一些更改:例如在 jakarta EE 9 中 javax 到 jakarta 命名空间的更改,无论你在哪里接触 Servlet API、JPA、Bean Validation...我们希望在接下来的几年里你们会欣赏这些选择。...在 Java 升级期间需要更改什么? 你的应用程序包含你和你的团队编写的代码,它可能还包含依赖项。如果从 JDK 中删除了某些内容,可能会破坏代码、依赖关系,或者两者都破坏。...JavaFX。从 Java 11 开始,平台不再将 JavaFX 作为规范的一部分,大多数 JDK 构建已经删除了它。...你可以使用来自 Gluon 的独立 JavaFX 构建,或者将 OpenJFX 依赖项添加到你的项目中。 字体。曾经 JDK 包含一些字体,但是从 Java 11 开始,它们被删除了。

    1.1K30

    Web内容的无障碍性(3):ARIA角色Roles值示与aria-*属性值列表说明

    application表示应用例如自定义的时间选择器。...tooltip表示提示文本tree表示树形效果见下面treeitem中的图。treeitem表示树结构选项ARIA 属性值示意及说明表属性名属性值说明aria-activedescendant字符串。...如果希望内容完全更新后再提示,可以使用上面提到的aria-busy.左侧的HTML为时间选择控件的年月标题部分,aria-live="assertive"表示的是当用户选择了新的时间的时候,尽快通知用户时间发生了变更...默认为false, 表示一次只能选择一个项。true表示一次可以选择多个项。...可选值有:additions, removals, text, all,可以空格分隔多个一起显示. additions表示新增节点的时候做出反应;removals表示删除节点时重要操作;text表示文本改变是值得重视的

    2K20
    领券