JavaFX MenuButton 仅作为具有 MenuButton 功能的图形或图标

标签 java css javafx

MenuButton

我添加了一个 MenuButton 并为其图形分配了一个图标。每当我将鼠标悬停在图形上时,颜色就会从黑色变为蓝色。问题是,我不需要精确地将鼠标悬停在图形上即可打开菜单。如果我点击任何标有红点的地方,选项就会出现在下面。

我环顾四周并设法使用以下 CSS 删除了尽可能多的东西:

#menubutton {
    -fx-background-color: transparent;
    -fx-background-insets: 0 0 0 0;
    -fx-border-color: transparent;
    -fx-padding: 0;
}
#menubutton > .arrow-button {
    -fx-background-color: transparent;
    -fx-padding: 0;
}
#menubutton > .arrow-button > .arrow {
    -fx-background-color: transparent;
    -fx-padding: 0;
}

但是如果点击这些地方仍然打开菜单选项,那么图标和按钮边框之间似乎还有一些空间。 In this example you can see the space more clearly.

有没有一种方法可以删除该空格或为图标提供 MenuButton 的功能,而无需按钮本身?

附言其他图标工作正常,因为它们是独立的,而不是作为按钮中的图形。

最佳答案

您还需要关闭菜单按钮内标签的填充。

#menubutton > .arrow-button,
#menubutton > .label{
    -fx-background-color: transparent;
    -fx-padding: 0;
}

关于JavaFX MenuButton 仅作为具有 MenuButton 功能的图形或图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59146482/

相关文章:

java - 如何用我自己的实现替换 Runtime.gc()?

html - 特定位置的子菜单

java - 在 JavaFX 中用 Canvas 绘制笛卡尔平面图

java - 启用 JMX 的 Tomcat7 打开 2 个额外的随机监听端口

java - 动态地将项目添加到一组 PopupMenu

html - 在一个未指定高度和一个清晰的div的两列边框框中,是什么导致了高度差异?

css - 我无法使用 CSS 更改链接的颜色

java - 如何在调用方返回数据之前等待 JavaFX 服务完成?

java - Oracle 是否致力于 JavaFX?

java - 对象引用困惑