问题标签 [splitpane]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
76 浏览

java - 无法将拆分窗格组件重置为以最小化和最大化为中心

我在定位拆分窗格组件时遇到问题,它们没有正确调整大小以最小化和最大化窗口我如何将它们设置为适合框架的中心

这种代码和平的问题

这是我的代码

提前致谢

0 投票
1 回答
2545 浏览

javafx - JavaFX 使用宽度/高度监听器来更新控件

我在我的应用程序上使用 JavaFX SplitPanes,当高度和宽度发生变化时,我需要更改分隔线位置,因为我想保持分隔线位置固定。我的代码如下:

和 resetSplitPane 方法:

我确实收到“高度已更改”的消息,但分隔线位置根本没有更改。我认为这与 JavaFX 执行覆盖我的更改的 gui 更改有关。换句话说; 我更改了分隔线的位置,但 JavaFX 将其更改回来,因为它的执行布局会随着窗口大小的调整而改变。

0 投票
1 回答
415 浏览

javafx - JavaFX:避免指定绝对宽度

我有SplitPane一个SplitPane- 两个水平的。我想避免指定绝对宽度/高度。当我不指定宽度/高度时,第二个SplitPane不显示:

0 投票
1 回答
3174 浏览

javafx - 从 FXML 中创建的父级中删除子级

我在 FXML 文件中创建了一系列嵌套的拆分窗格。我有按钮将孩子的最大尺寸设置为零,有效地隐藏了它们。

这会将拆分窗格分隔线留在那里,并在重新调整大小时导致问题,因为拆分窗格嵌套并且分隔线正在碰撞。

可行的方法是从拆分窗格中删除子节点,使其只剩下一个节点,并且不绘制额外的分隔线。

问题是我无法访问 SplitPanes 的 getChildren(),因为它们是受保护的。fxml 中定义的拆分窗格

我想使用的控制器代码:

有任何想法吗?

0 投票
1 回答
435 浏览

java - JavaFX 8 错误的 SplitPane 的分隔符位置

我使用内部有 4 个节点的 splitPane,没有大小限制。但是当我尝试拆分它时,它不起作用。

使用的代码

该代码位于以 Platform.runLater(new Runnable) 和 run() 函数开头的函数中。

输出

但与其他位置值

与 0.3、0.6 和 1.0 和

具有 0.5、1.0 和 1.0 值

我使用Java 1.8Java FX 8

谢谢

0 投票
1 回答
2440 浏览

javafx - 拆分窗格内的 JavaFX 拆分窗格设置分隔符位置

我正在设计一个 JavaFX GUI,其中嵌入了多个拆分窗格。如果用户选择重置视图的选项,我希望能够将分隔线位置重置为其初始值。问题是用户必须多次单击重置视图选项才能完全重置分隔线位置。这样做一次会重置相同方向的分隔线,但不会重置相反方向的分隔线。

这是问题的一个例子。拖动滑块,然后单击窗口顶部的“重置视图”按钮:

我尝试为每个滑块添加一个延迟计时器,这解决了问题,但感觉像是一个笨拙的解决方案。如果有更好的方法有什么想法吗?

0 投票
4 回答
12172 浏览

javafx - JavaFx:禁用分隔线

我有一个带有SplitPane的JavaFX应用程序。我想禁用SplitPane上的Divider,因此在应用程序运行时无法更改其位置。我怎样才能做到这一点?

0 投票
1 回答
4654 浏览

javafx-8 - JavaFX 8,如何在 Splitpane 中隐藏窗格?

我有一个从 FXML 创建的拆分窗格,它由从左到右的三个窗格组成。我希望能够隐藏最右边的窗格,但我找不到任何东西来隐藏它。如果我关闭可见性,它会隐藏窗格内容。我想要的是暂时隐藏它,因此窗格在视觉上被删除。

作为一种临时解决方法,我将分隔线移动到 100%,但这会使分隔线可见。另一个副作用是,如果我调整主窗口的大小,分隔线不会停留在最右边的位置。

在拆分窗格中隐藏一个窗格的任何提示?

或者关于在不使用拆分窗格的情况下实现此目的的最佳方法的任何提示(最右边的窗格在未隐藏时需要调整大小)。对技术/容器的一般指针将不胜感激,因为我是 Java/JavaFX 的新手,但对编程不熟悉 :)


0 投票
3 回答
1522 浏览

java - SplitPane 布局问题

这是一个交叉帖子: http: //mail.openjdk.java.net/pipermail/openjfx-dev/2015-January/016437.html

有时,当我以编程方式设置 SplitPane 的分隔线位置时,我的值会再次被一些 JavaFX 内部布局代码覆盖。

出于调试目的,我在分隔符的 position 属性中添加了一个侦听器,并引发了 RuntimeException 以查看堆栈跟踪。它看起来像这样:

它似乎没有被我的某些代码触发(至少不是直接根据堆栈跟踪)。

我尝试了几件事,包括将项目的 prefWidth/prefHeight 设置为预期值,但我无法阻止 SplitPane 在重新布局期间有效地“隐藏”第一个和第三个(最后一个)项目。

在 layoutChildren 调用期间,两个分隔符发生了如下变化:

分频器位置更改:旧值:0.10857763300760044,新值:0.004343105320304018

分频器位置更改:旧值:0.8914223669923995,新值:0.995656894679696

我查看了 com.sun.javafx.scene.control.skin.SplitPaneSkin(JDK 提供的源代码),但不幸的是,在这种情况下很难看到这些区域是如何计算的。

为什么这里会发生这种重新布局?为什么它会覆盖我为分隔位置设置的值?怎么能阻止呢?

我试图编写一个 SSCCE,但我还不能用一个简单的示例来重现这个问题。(问题发生在自定义控件的外观实现中。)

更新

有问题的 SplitPane 的 3 个项目(控件的子类)(方向:垂直)具有以下最小和最大高度:

AFAIK 这是Region.USE_COMPUTED_SIZE的值。

我将最大值更改为Double.MAX_VALUE

但我仍然遇到同样的问题。

更新 2

我终于设法创建了一个 SSCCE:

如果关闭左侧选项卡,则顶部和底部选项卡将隐藏(大小为 0),尽管分隔符位置是在 layoutChildren() 调用之前设置的(请参阅输出)。

我遇到这种情况是因为我需要在我的代码中重置 splitPane 的项目。另请注意,这些项目具有不同的 resizableWithParent 属性。

更新 3

这是一个较小的 SSCCE,只有一个 SplitPane。当您按下“增加宽度”按钮时,您会看到相同的效果。

这是 JavaFX 错误还是我能以某种方式影响的东西?

0 投票
1 回答
1163 浏览

javafx - 调整父窗格大小时的 Javafx Splitpane 分隔符位置

我有一个带有三个孩子的拆分窗格,但我想一次只显示 2 个顶部或 2 个底部的孩子。所以我实现了一个滑动动画,它在父窗格中上下滑动拆分窗格。滑动动画效果很好,但是当我调整父窗格的大小时,分隔符位置出现问题。如何确保分隔线位置始终正确?该图像应该使我的想法清晰。 在此处输入图像描述