【问题标题】:ControlsFX PopOver - adding style classes cuts off the bordersControlsFX PopOver - 添加样式类切断边界
【发布时间】:2017-09-18 00:21:42
【问题描述】:

我一直在使用 controlsFX 的 PopOver 节点,所以我想更改控件的背景颜色,所以我更改了内容节点的背景颜色,但箭头和标题没有着色 here(白盒子只是卡片,应该是白色的)所以我尝试了我发现的这种方法here

globalScopingPopOver.show(owner);

((Parent) globalScopingPopOver.getSkin().getNode()).getStylesheets()
        .remove(getClass().getResource("/css/myCustomPopOver.css").toExternalForm());

((Parent) globalScopingPopOver.getSkin().getNode()).getStylesheets()
        .add(getClass().getResource("/css/myCustomPopOver.css").toExternalForm());

myCustomPopOver.css 包含的位置:

.popover > .border {
    -fx-fill: rgb(0,0,0);
}

.popover > .header {
    -fx-fill: rgb(0,0,0);
}

这给我留下了this,它有两个明显的问题,第一个是右边框被修剪,第二个是箭头隐藏在页脚栏下。

通过拖动分离弹出框修复了右边框问题,但通过代码分离和重新附加它会让我们回到我们开始移除 CSS 样式表效果的地方:

globalScopingPopOver.detach();
globalScopingPopOver.setDetached(false);

那么任何帮助为什么会发生这种情况以及如何解决它?

谢谢!

【问题讨论】:

    标签: javafx popover controlsfx


    【解决方案1】:

    在添加样式表后第二次调用 show(owner) 对我有用。

    【讨论】:

    • 做到了!谢谢!
    猜你喜欢
    • 1970-01-01
    • 2016-07-01
    • 2014-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多