在 Java 应用程序中使用 CSS

新手上路,请多包涵

我使用 Java 已经有一段时间了,现在我想制作一个新的应用程序,我想知道,是否有可能通过新的按钮和类似的东西让 Java 看起来更现代。

所以我开始寻找将 CSS(用于网络编程)应用到 Swing 组件的解决方案,但没有找到真正的解决方案。

我不想使用很多非内置选项,所以使用框架和库应该是我最后的选择。

我的问题是:有没有办法将 CSS 应用到我的 Java UI?如果不可能:是否有另一种方法可以通过添加某种样式表来使整个 GUI 看起来不同?

原文由 JetStream 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 530
2 个回答

你应该查一下javafx。您可以将 css 文件附加到 GUI。它相当容易使用。如果你愿意,我可以给你一些示例代码。

这些是关于如何使用它的一些很好的教程: https ://www.youtube.com/watch?v=FLkOX4Eez6o

我使用eclipse创建一个css文件右键项目->选择新建->其他->CSS文件

import javafx.application.*;
import java.text.*;
import java.util.*;
import javafx.event.*;
import javafx.scene.*;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.scene.input.*;
import javafx.stage.*;
import javafx.geometry.*;

 public class Display extends Application{

public static void main(String[] args){
    launch(args);
}

@Override
public void start(Stage stage) throws Exception{

    HBox root = new HBox();

    Button button = new Button("button");
    Label  label = new Label("Label");

    root.getChildren().addAll(button, label);

    Scene scene = new Scene(root, 700,300);
    scene.getStylesheets().add("Style.css");
    stage.setScene(scene);

    stage.setTitle("Title");

    stage.show();
  }
}

<———————————CSS 文件————– —————->

  .root{
     -fx-background-color: linear-gradient(#383838, #838383);
     -fx-font-size: 11pt;
 }

 .label{
     -fx-text-fill: #e8e8e8;
  }

 .button{
-fx-background-color: linear-gradient(#dc9556, #ab4642);
-fx-background-radius: 100;
 }

 .text-area{
     -fx-background-color: white;
     -fx-background-radius: 0;
  }

原文由 W.Sar 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题