JavaFx之整合JFoenix(十四)
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(十四)的更多相关文章
- Spring Boot(十四):spring boot整合shiro-登录认证和权限管理
Spring Boot(十四):spring boot整合shiro-登录认证和权限管理 使用Spring Boot集成Apache Shiro.安全应该是互联网公司的一道生命线,几乎任何的公司都会涉 ...
- 如约而至,Java 10 正式发布! Spring+SpringMVC+MyBatis+easyUI整合进阶篇(十四)Redis缓存正确的使用姿势 努力的孩子运气不会太差,跌宕的人生定当更加精彩 优先队列详解(转载)
如约而至,Java 10 正式发布! 3 月 20 日,Oracle 宣布 Java 10 正式发布. 官方已提供下载:http://www.oracle.com/technetwork/java ...
- springboot(十四):springboot整合shiro-登录认证和权限管理(转)
springboot(十四):springboot整合shiro-登录认证和权限管理 .embody{ padding:10px 10px 10px; margin:0 -20px; border-b ...
- spring-boot-route(十四)整合Kafka
在上一章中SpringBoot整合RabbitMQ,已经详细介绍了消息队列的作用,这一种我们直接来学习SpringBoot如何整合kafka发送消息. kafka简介 kafka是用Scala和Jav ...
- 无废话ExtJs 入门教程十四[文本编辑器:Editor]
无废话ExtJs 入门教程十四[文本编辑器:Editor] extjs技术交流,欢迎加群(201926085) ExtJs自带的编辑器没有图片上传的功能,大部分时候能够满足我们的需要. 但有时候这个功 ...
- 【转】花开正当时,十四款120/128GB SSD横向评测
原文地址:http://www.expreview.com/19604-all.html SSD横评是最具消费指导意义的评测文章,也是各类热门SSD固态硬盘的决斗疆场.SSD评测在行业内已经有不少网站 ...
- Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式
Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell 文件 Py ...
- 只需十四步:从零开始掌握 Python 机器学习(附资源)
分享一篇来自机器之心的文章.关于机器学习的起步,讲的还是很清楚的.原文链接在:只需十四步:从零开始掌握Python机器学习(附资源) Python 可以说是现在最流行的机器学习语言,而且你也能在网上找 ...
- 开发指南专题十四:JEECG微云高速开发平台MiniDao 介绍
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/zhangdaiscott/article/details/27068645 开发指南专题十四:J ...
- 只需十四步:从零开始掌握Python机器学习(附资源)
转载:只需十四步:从零开始掌握Python机器学习(附资源) Python 可以说是现在最流行的机器学习语言,而且你也能在网上找到大量的资源.你现在也在考虑从 Python 入门机器学习吗?本教程或许 ...
随机推荐
- Oracle-降低表的高水位线
在应用中存在一系列的表,对表的操作是批量插入又批量删除,最终导致表的水位线很高.高水位线影响全索引扫描的SQL.即影响系统的性能. 现有方法降低表的水位线: 1.降低表的高水位线 select 'al ...
- Django框架项目之git笔记——版本控制器、git介绍、git使用
文章目录 版本控制器 git 简介 git与svn比较 git的工作流程 版本库间的通信 git分支管理 git使用 流程(核心总结) 安装 基础命令 将已有的文件夹 - 初始化为git仓库 在指定目 ...
- Fortran 的简单入门和使用 OpenMPI
Fortran 与 C-like 语言的区别简单总结 无大括号,使用关键字画出范围: C++: int main() { } Fortran: program test implicit none e ...
- Python join拼接
import os print(os.path.join("I","love","you.")) # /XXX 代表的是绝对路径 这个变量之 ...
- 模块化打包工具-Webpack插件与其他功能
1.Webpack插件机制 上一篇提到的webpack的loader可以用来加载资源,包括各种css,图片文件资源,实现打包文件的功能,而webpack的插件则起到了加强webpack的作用,可以完成 ...
- Regions 题解
Regions 这里提供一种时间复杂度不那么优秀但十分好写也好理解的做法. 题目大意 给定一颗 \(n\) 个节点的树,每个节点拥有一个颜色,进行若干次询问,每次询问给出两种颜色 \(A,B\),求所 ...
- Python 模块:创建、导入和使用
什么是模块? 将模块视为代码库.模块是一个包含一组函数的文件,您想要在应用程序中包含这些函数. 创建一个模块 要创建一个模块,只需将要包含在其中的代码保存在扩展名为 .py 的文件中: 示例:将以下代 ...
- Vue源码学习(十六):diff算法(三)暴力比对
好家伙,这是diff的最后一节了 0.暴力比对的使用场景 没有可复用的节点:当新旧虚拟 DOM 的结构完全不同,或者某个节点不能被复用时,需要通过暴力比对来创建新的节点,并在真实 DOM 上进行相 ...
- baby_web
点开页面获得提示 根据提示,访问index.php,但是会自己跳转到1.php 这时候抓包修改才ok才能定位到index.php
- 使用MVVM Toolkit简化WPF开发
最近. NET 8 的 WPF 推出了 WPF File Dialog改进,这样无需再引用 Win32 命名空间就可以实现文件夹的选择与存储了,算是一个很方便的改进了.顺手写了一个小的 WPF 程序, ...