当前位置: 首页 > 知识库问答 >
问题:

Javafx文本区域滚动窗格边框颜色问题

姚培
2023-03-14

我在javafx文本区域有一个问题:当我聚焦文本区域时,边框被应用...那还可以。

但是当我用滚动条手柄拖动时,文本区域边框焦点会丢失。

见下图:

共有1个答案

史和泰
2023-03-14

一个可能的解决方法是不允许在Textarea中对滚动窗格进行聚焦。也就是说,当滚动窗格获得焦点时,我们强制将焦点集中在textarea上。这样,焦点将永远集中在textarea上。

import javafx.scene.control.ScrollPane;
import javafx.scene.control.TextArea;

public class CustomTextArea extends TextArea {
    private ScrollPane textAreaScrollPane;

    @Override
    protected void layoutChildren() {
        super.layoutChildren();
        if (textAreaScrollPane == null) {
            textAreaScrollPane = (ScrollPane) lookup(".scroll-pane");
            textAreaScrollPane.focusedProperty().addListener((obs, oldVal, focused) -> {
                if (focused) {
                    requestFocus();
                }
            });
        }
    }
}

您将在应用程序中使用此CustomTextArea。

TextArea textArea = new CustomTextArea();
 类似资料:
  • 我有一些关于滚动窗格的默认背景和边框的问题。使用这种风格使问题看得更清楚。 我试过这种风格,但没有运气,只有红色的边框消失了,留给我的是蓝色的。 我查看了这个旧的后JavaFX隐藏滚动窗格灰色边框和http://docs.oracle.com/JavaFX/2/ui_controls/editor.htm 这行代码也不起作用 谢谢

  • 我正在处理一个PI近似(使用无穷级数)GUI,我遇到了一个奇怪的问题。在JavaFX8场景构建器中,我将背景颜色设置为,但当我启动程序时,背景仍然是白色的。我注意到的奇怪的事情是TextArea的轮廓变成了黑色。我已经检查了将背景再次变为白色的矛盾代码,但由于我刚刚开始,不可能有任何代码。更奇怪的是,在场景构建器的程序预览中,文本区显示为黑色。节点图可以在左侧第一张图中看到。

  • 我有一个带有一些TextArea元素的GUI来显示信息。由于GUI将对keyevents做出反应,我在场景元素中添加了一个EventHandler。因为我不想为每个文本区域添加一个EventHandler,所以我禁用了它们以防止它们聚焦,因为这样场景的EventHandler就不再工作了。现在我有一个问题:文本显示为灰色,不再是黑色,尽管我在css文件中更改了它。你知道为什么文本不是黑色的吗?我该

  • 问题内容: 我的页面上有一个textarea html元素,该元素通过ajax重新加载。每次返回整个textarea不仅是其内容,而且内容会随着时间增长。连同textarea一起,我返回了以下javascript: 在firefox 3.0.7中,这会将滚动条放在textArea的底部,使我可以看到最新的输出。但是在IE 7中,我看到了不同的行为。滚动条将按预期的内容向下移动,但是一旦内容较大,则

  • 问题我如何可以嵌入这个应用程序到SPlitPane,在左边将是另一个面板。 不幸的是,代码导致了错误的坐标,

  • 问题内容: 当内容的高度增加时,有什么方法可以自动向下滚动ScrollPane控件?例如,我在屏幕底部(在ScrollPane内部)有一个TitledPane,当我展开它时,我希望ScrollPane向下滚动,以便可以看到TitledPane的全部内容。 问题答案: 您可以结合使用和和来实现该行为 第一个是获取titlePane的坐标,第二个是设置scrollPane的垂直栏位置。请注意,它的范围