我正在尝试管理一个com.gluonhq.charm.glisten.control.CardPane。它很好,直到它的列表的长度成为可滚动的。然后我得到一个垂直的和水平的滚动条围绕着它。给CardPane一个要引用的CSS类名不起作用。它中似乎有我需要管理的子组件,但我不知道如何用名称来引用它们。
在回答这个问题之前,让我扩展这个问题,这样我以后就不必再问另一个小部件了。考虑GluonFX FiftyStates示例项目。要将CSS应用于ListTile的子文本,我在源代码中看到以下内容:
.charm-list-view .list-cell.header-cell > .list-tile > .text-box > .secondary-text {
/* Headers secondary text */
-fx-text-fill: #FFFFFFDE;
}好的,现在我知道了如何向下遍历来具体地操作小部件的那个方面。但是,如果没有一个代码示例在源代码中显示这一点,那么我如何了解给定GluonFX控件的这些CSS类名的层次结构呢?
如果您不知道如何回答我提出的更一般的问题,但您知道我如何解决我的CardPane问题,请至少告诉我,谢谢。否则,我将不得不放弃这个GluonFX控件,改用另一个控件作为解决办法。
编辑
我发现了@JosePereda -> https://stackoverflow.com/a/46854083/16394182与CSS相关的高级解释,它包含了我正在寻找的CSS洞察力:
.card-pane > .charm-list-view > .list-view 我似乎需要了解更多关于CardPane的内部结构,因为我无法解决使水平滚动条停止的问题。
我下载了他提到的SceneView应用程序,该应用程序允许我们自己查看CSS信息-> https://github.com/JonathanGiles/scenic-view的小部件,但是我的应用程序运行良好,在启动SceneView时显示了一个直接的堆栈跟踪错误,而SceneView一直在寻找运行中的JavaFX应用程序,永远找不到我的应用程序。我想这个工具不适用于GluonFX移动应用程序,是吧?
发布于 2021-08-04 01:47:04
谢谢@JoséPereda保证继续致力于使ScenicView工作。我最初对此感到困惑,并认为这个问题可能有些异国情调。结果,我只需要用以下一个依赖项更新我的GluonFX应用程序的POM文件:
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-swing</artifactId>
<version>${javafx.version}</version>
</dependency>然后,我发现了CSS类路径,以消除CardPane中不必要的水平滚动条:
.card-pane > .charm-list-view > .list-view > .virtual-flow > .clipped-container > .sheet > .list-cell > .card {
-fx-padding: 5;
}ScenicView是一个非常重要的工具,我很惊讶它没有包含在胶子的文档中作为标准的开发人员设置。
https://stackoverflow.com/questions/68578646
复制相似问题