JavaFx之整合JFoenix

JFoenix是JavaFx流行的UI框架之一
github:https://github.com/sshahine/JFoenix
整合Maven

<!--https://github.com/sshahine/JFoenix-->
<dependency>
<groupId>com.jfoenix</groupId>
<artifactId>jfoenix</artifactId>
<version>8.0.10</version>
</dependency>
<!--图标-->
<dependency>
<groupId>de.jensd</groupId>
<artifactId>fontawesomefx</artifactId>
<version>8.9</version>
</dependency>

一、代码中使用

按钮和图片按钮

import com.jfoenix.controls.JFXButton;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.image.ImageView;
import javafx.scene.layout.AnchorPane;
import javafx.stage.Stage; /**
* @author lingkang
*/
public class JfTest01 extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
AnchorPane anchorPane=new AnchorPane();
anchorPane.setPrefHeight(100);
anchorPane.setPrefWidth(100); JFXButton jfxButton=new JFXButton("按钮");
jfxButton.setLayoutX(10);
jfxButton.setLayoutY(0);
jfxButton.setStyle("-fx-background-color: #409eff");// 背景颜色 // 限制图片宽高
ImageView imageView = new ImageView("/assets/茶壶.png");
imageView.setFitWidth(16);
imageView.setFitHeight(16);
JFXButton button=new JFXButton("图片按钮",imageView);
button.setLayoutX(10);
button.setLayoutY(40); anchorPane.getChildren().addAll(jfxButton,button);
primaryStage.setScene(new Scene(anchorPane));
primaryStage.show();
} public static void main(String[] args) {
launch(args);
}
}

二、XML中使用:

按钮和图标按钮,,,将上面的代码改为:

// 加载 xml
URL resource = getClass().getResource("/fxml/test/but.fxml");
AnchorPane load = FXMLLoader.load(resource); primaryStage.setScene(new Scene(load));
primaryStage.show();

fxml内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<?import com.jfoenix.controls.JFXButton?>
<?import de.jensd.fx.glyphs.fontawesome.FontAwesomeIconView?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.layout.AnchorPane?>
<?import javafx.scene.layout.HBox?>
<?import javafx.scene.text.Font?>
<AnchorPane xmlns="http://javafx.com/javafx"
xmlns:fx="http://javafx.com/fxml"
prefHeight="100.0" prefWidth="100.0">
<JFXButton mnemonicParsing="false" prefHeight="33.0" fx:id="createDownloadTask"
style="-fx-background-color: #409eff;" text="创建JFX任务">
<font>
<Font size="14.0"/>
</font>
<HBox.margin>
<Insets left="100.0" top="12.0"/>
</HBox.margin>
<!--添加图标-->
<graphic>
<FontAwesomeIconView fill="WHITE" glyphName="PLUS" size="14.0"/>
</graphic>
</JFXButton>
<JFXButton layoutX="10" layoutY="60" text="jfx按钮">
</JFXButton>
</AnchorPane>

三、我提供编译好的JFoenix-demo

还有很多模块就不一一展示了,下面提供我编译好的:我用阿里云盘分享了「demo-0.0.0-SNAPSHOT」,你可以不限速下载
复制这段内容打开「阿里云盘」App 即可获取
链接:https://www.aliyundrive.com/s/uxtrJtX837P

下载所有文件,在安装了jdk8的环境运行bin/demo.bat

各个模块的使用方式也非常简单,你只需要进入到源码的fxml中,直接加载使用,例如Checkbox.fxml

        // 加载 xml
URL resource = getClass().getResource("/fxml/test/Checkbox.fxml");
StackPane load = FXMLLoader.load(resource); primaryStage.setScene(new Scene(load));
primaryStage.show();


四、一健三连

创作不易,你觉得对你有帮助请给我点个赞!一健三连…谢谢啦!

JavaFx之整合JFoenix(十四)的更多相关文章

  1. Spring Boot(十四):spring boot整合shiro-登录认证和权限管理

    Spring Boot(十四):spring boot整合shiro-登录认证和权限管理 使用Spring Boot集成Apache Shiro.安全应该是互联网公司的一道生命线,几乎任何的公司都会涉 ...

  2. 如约而至,Java 10 正式发布! Spring+SpringMVC+MyBatis+easyUI整合进阶篇(十四)Redis缓存正确的使用姿势 努力的孩子运气不会太差,跌宕的人生定当更加精彩 优先队列详解(转载)

    如约而至,Java 10 正式发布!   3 月 20 日,Oracle 宣布 Java 10 正式发布. 官方已提供下载:http://www.oracle.com/technetwork/java ...

  3. springboot(十四):springboot整合shiro-登录认证和权限管理(转)

    springboot(十四):springboot整合shiro-登录认证和权限管理 .embody{ padding:10px 10px 10px; margin:0 -20px; border-b ...

  4. spring-boot-route(十四)整合Kafka

    在上一章中SpringBoot整合RabbitMQ,已经详细介绍了消息队列的作用,这一种我们直接来学习SpringBoot如何整合kafka发送消息. kafka简介 kafka是用Scala和Jav ...

  5. 无废话ExtJs 入门教程十四[文本编辑器:Editor]

    无废话ExtJs 入门教程十四[文本编辑器:Editor] extjs技术交流,欢迎加群(201926085) ExtJs自带的编辑器没有图片上传的功能,大部分时候能够满足我们的需要. 但有时候这个功 ...

  6. 【转】花开正当时,十四款120/128GB SSD横向评测

    原文地址:http://www.expreview.com/19604-all.html SSD横评是最具消费指导意义的评测文章,也是各类热门SSD固态硬盘的决斗疆场.SSD评测在行业内已经有不少网站 ...

  7. Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式

    Python第十四天 序列化  pickle模块  cPickle模块  JSON模块  API的两种格式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Py ...

  8. 只需十四步:从零开始掌握 Python 机器学习(附资源)

    分享一篇来自机器之心的文章.关于机器学习的起步,讲的还是很清楚的.原文链接在:只需十四步:从零开始掌握Python机器学习(附资源) Python 可以说是现在最流行的机器学习语言,而且你也能在网上找 ...

  9. 开发指南专题十四:JEECG微云高速开发平台MiniDao 介绍

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/zhangdaiscott/article/details/27068645   开发指南专题十四:J ...

  10. 只需十四步:从零开始掌握Python机器学习(附资源)

    转载:只需十四步:从零开始掌握Python机器学习(附资源) Python 可以说是现在最流行的机器学习语言,而且你也能在网上找到大量的资源.你现在也在考虑从 Python 入门机器学习吗?本教程或许 ...

随机推荐

  1. C#使用iKvm黑科技无缝接入JVM生态

    前言 时间过得飞快,一转眼国庆假期也要过去了,再不更新博客就太咸鱼了-- 最近在开发AIHub的时候想找个C#能用的命名实体识别库,但一直没找到,AI生态方面C#确实不太丰富,这块还是得Python, ...

  2. buffer busy waits等待事件案例-vage

    转自vage 讨厌香草冰激凌的汽车与Buffer busy wiats的故事        记得好几年前看到过一个故事,通用公司曾收到一客户的邮件,邮件中客户描述了一个非常奇怪的问题.他们家有晚饭后去 ...

  3. Travelling Salesman and Special Numbers

    prologue 模拟赛的一道题,结果没做出来,丢大人,败大兴.所以过来糊一篇题解. analysis 我们看到数据范围这么大,那么肯定不可以一个一个遍历(废话),所以就要考虑这个题目的性质. 我们先 ...

  4. python学习笔记(持续更新)

    一.对列表的操作 #建立一个列表 list = [1,2,3,4] #打印列表 print(list) #在列表尾部添加元素 list.append(5) #在指定位置插入元素 list.insert ...

  5. [ARC143B] Counting Grids 题解

    Counting Grids 题目大意 将 \(1\sim n^2\) 填入 \(n\times n\) 的网格 \(A\) 中,对于每个格子满足以下条件之一: 该列中存在大于它的数. 该行中存在小于 ...

  6. 前端CSS五中元素定位类型

    元素想通过底部.顶部.左侧.右侧属性定位是必须先设定position的属性值 posistion属性的五个值:static.relative.fixed.absoulte.sticky static定 ...

  7. 从零用VitePress搭建博客教程(1) – VitePress的安装和运行

    1.从零用VitePress搭建博客说明(1) – VitePress的安装和运行 一.写在前面 最近在想更新一把自己的前端吧小博客,但发现wordPress版本停留在了5年之前,发现变化挺大,不支持 ...

  8. 18. 从零开始编写一个类nginx工具, 主动式健康检查源码实现

    wmproxy wmproxy将用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,后续将实现websocket代理, 内外网穿透等, 会将实现过程分享出来, 感 ...

  9. VRRP相关简述

    VRRP 诞生原因 单网关,出问题时,旗下所有主机无法通信. 多网关,容易产生网关冲突. 而,VRRP能够在不改变组网的情况下,将多台路由器虚拟成一个虚拟路由器,通过配置虚拟路由器的IP地址为默认网关 ...

  10. 基于Echart的前端可视化

    GitHub 上有许多关于低代码自助可视化的项目,前端使用 Vue 和 ECharts 的示例.以下是一些可能符合你要求的项目: DataV: 项目链接:DataV 描述:DataV 是一款基于 Vu ...