【问题标题】:JavaFX how to remove the borders from buttonJavaFX如何从按钮中删除边框
【发布时间】:2017-10-12 20:43:53
【问题描述】:

https://i.stack.imgur.com/Y76Fl.png

在这张图片的左侧 - 运行 java 程序,右侧 - 场景构建器布局。

这是我的 github 代码:https://github.com/captsmile/calc

【问题讨论】:

  • 在帖子中包含代码,而不是外部链接

标签: java button javafx border


【解决方案1】:

您可以通过按钮上的 JavaFX CSS 选择器来实现。 这个链接里的答案查看一下,还有很多JavaFX相关的例子你可能会感兴趣:

http://tutorials.jenkov.com/javafx/button.html

【讨论】:

    【解决方案2】:

    您可以在.css文件中执行以下代码

    .button
     {
        -fx-background-color: transparent;
     }
    

    这将使按钮的颜色成为应用程序背景颜色的颜色(由于透明度)。

    此外,您还可以应用一些效果来使您的按钮看起来更酷。添加效果

    .button:hover 
    {
      -fx-background-color: yellow;
    } 
    .button:pressed
    {
      -fx-background-color: brown;
    }
    

    最后,您可以通过在 index.java 中编写以下代码,将案例文件与您的文件(假设您要在其中应用 css 的 index.java 文件)一起附加

    scene.getStylesheets().add(getClass().getClassLoader().getResource("application.css").toExternalForm());
    

    其中 application.css 是上面给出的完整 css 代码的 css 文件。此应用程序文件必须存在于您的 src 文件夹中。

    【讨论】:

      【解决方案3】:

      我在 GridPane 修复了这个移除边框

      .root{
          -fx-padding: 5;
          -fx-border-style: none;
          -fx-border-width: 0;
          -fx-border-insets: 0;
      }
      

      【讨论】:

        【解决方案4】:

        这就是你在scenebuilder中的做法

        通过点击选择按钮。

        然后在属性->样式中 选择“-fx-background-color” 并将值设为“透明”

        这样

        【讨论】: