JavaFx
凌康ACG
不停地磨炼轻易取胜的技巧
展开
-
JavaFx之使用指定字体样式(二十九)
javafx默认的字体样式太丑,可能需要我们自定义字体样式。原创 2022-09-20 11:40:09 · 1075 阅读 · 0 评论 -
JavaFx之使用高版本JDK(二十八)
有些提供商已经把jfx集成到高版本的openjdk上了,例如:LibericaFX。要知道高版本jfx已经集成了丰富的主流功能,例如视频编码,大多数音频播放格式。根据官网的需要手动引入jfx模块(运行参数:–module-path)只是绑定了jfx,运行时还需要引入对应的Maven依赖才能运行jfx。下载选择完整版的openjdk18就绑定了jfx。如何使用高版本的jfx?在idea中配置此jdk。...原创 2022-08-16 11:10:50 · 1398 阅读 · 0 评论 -
JavaFx之播放MP4(二十七)
JavaFX 视频和音频支持,由 JavaFX 媒体类 Media、MediaPlayer、MediaView 和 AudioClip 提供。原创 2022-08-15 04:07:13 · 614 阅读 · 1 评论 -
JavaFx之模态窗口(二十六)
模态窗口:在场景A打开场景B,则A场景无法选择和操作,只能操作B。可以看到,并没有打开多个底部窗口。设置方式,在场景B初始化时设置。原创 2022-08-15 03:51:26 · 1031 阅读 · 0 评论 -
JavaFx之WebView(二十五)
JavaFx之WebView(二十五)jfx的web引擎已经几百年没更新,早就放弃了,写写demo还是不错。jdk8u202还能跑vue 3.0项目import javafx.application.Application;import javafx.scene.Scene;import javafx.scene.control.TextField;import javafx.scene.layout.BorderPane;import javafx.scene.web.WebEngine;i原创 2022-04-28 12:21:38 · 1669 阅读 · 0 评论 -
JavaFx之ScrollPane滚动板面、CheckBox复选框(二十四)
JavaFx之ScrollPane滚动板面、CheckBox复选框(二十四)多个复选框时可能会超出屏幕,需要使用滚动版面。布局方式:ScrollPane包括VBox、VBox 包括多个 CheckBox,效果如下:import javafx.beans.value.ChangeListener;import javafx.beans.value.ObservableValue;import javafx.scene.Scene;import javafx.scene.control.Butto原创 2022-04-17 18:48:13 · 1000 阅读 · 0 评论 -
放弃JavaFx开发学习
放弃JavaFx开发学习一开始学学习JavaFx是想用java写个小游戏,后来学者JavaFx越来越深,发现坑也越来越多,不禁感叹:JavaFx果然是要抛弃的UI玩儿,UI开发还是用react native,例如Electron,社区活跃。JavaFx社区不活跃,也不应该死磕落后于时代的玩儿,java生态庞大,UI却拉胯,让人唏嘘不已。也该看清技术服务的本质了...原创 2022-01-25 17:40:13 · 1186 阅读 · 5 评论 -
JavaFx之触发激发鼠标事件(二十三)
JavaFx之触发激发鼠标事件(二十三)有时候,我们不能直接触发/激发某个按钮的点击事件,因为发起方可能是子线程。使用屏幕点击又不优雅,javafx已经提供了事件的激发,即使在子线程中也能激发某个按钮的点击。 // 触发鼠标点击事件 Label delete = (Label) selected.getActions().lookup("#delete"); Event.fireEvent(delete,new MouseEvent(MouseEvent.MOUSE_CLICKED,原创 2021-12-31 16:58:58 · 1289 阅读 · 3 评论 -
javacv实现屏幕录制(一)
javacv实现屏幕录制(一)javacv从入门到入土系列,发现了个好玩的东西,视频处理,于是我想搞个屏幕录屏,我百度了一下,copy那些代码我没有实现过,那些代码也没有说明,只好去官网看文档找资料了看wiki和example了emm,,,这里我使用javafx进行页面显示。思路,用FFmpegFrameGrabber创建屏幕录制采集,将采集到的帧数据追加到FrameGrabber,用FrameGrabber做视频输出。。。按照这个思路,你也能把数据采集改成摄像头采集。依赖 <原创 2021-12-29 14:39:11 · 2969 阅读 · 9 评论 -
Java播放MP3播放音频
Java播放MP3播放音频下面我演示用jdk自带包、框架等分别展示播放mp3、等music一、使用javafx包AudioClip注意jdk11以上剥离了javafx public static void main(String[] args) throws Exception { File file = new File("C:\\Users\\Administrator\\Desktop\\塞壬唱片-MSR,BaoUner - 生命流.mp3"); URI原创 2021-12-11 13:25:01 · 6468 阅读 · 3 评论 -
JavaFx之TableView表格添加按钮删除行(二十二)
JavaFx之TableView表格添加按钮删除行,实现刷新某行某列,全表刷新原创 2021-11-26 10:47:43 · 3965 阅读 · 7 评论 -
JavaFx之场景交互(二十一)
JavaFx之场景交互(二十一)有parent、son两个父子窗口,父窗口可以操作son窗口import javafx.application.Application;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.layout.AnchorPane;原创 2021-11-18 20:57:51 · 1339 阅读 · 1 评论 -
JavaFx之全局异常捕获(二十)
JavaFx之全局异常捕获(二十)javafx开发时,我们有时候需要捕获未处理的异常、手动抛出的异常,在main方法中添加下面代码: public static void main(String[] args) { // 捕捉未处理的异常 Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { @Override原创 2021-11-18 11:36:52 · 755 阅读 · 0 评论 -
JavaFx之横向布局左右两侧对齐(十九)
JavaFx之横向布局左右两侧对齐(十九)横向布局HBox在子节点A、B中添加<HBox HBox.hgrow="ALWAYS"></HBox> 即可做到A靠左侧、B靠右侧:<HBox fx:id="hBox" alignment="CENTER_LEFT" prefHeight="100.0" prefWidth="600.0"> <children> <Label prefWidth="350.0"原创 2021-11-17 16:44:15 · 1985 阅读 · 1 评论 -
IDEA将JavaFx打包为exe Win+Mac+Linux多平台分发等等
IDEA将JavaFx打包为exe Win+Mac+Linux多平台分发等等前面介绍到了用packr打包javafx17为exe多平台分发,比较复杂,这篇则介绍用idea直接打包exe,比较简单,但是需要注意的是Maven依赖的添加。使用idea打包的exe会把整个jdk给打包进去,体积比较大,自己可以修改这个打包内容,从而做到减少体积。一、准备一个javafx项目这是我用jdk8+fastjson+okhttp+fontawesome+jfoenix+controlsfx开发的一个demo:原创 2021-11-17 12:13:13 · 3811 阅读 · 2 评论 -
JavaFX打包exe+Wind+Mac+Linux多平台分发等等
JavaFX打包exe+Wind+Mac+Linux多平台分发等等如果使用java -jar xxx.jar一堆窗口不好看,分发不方便,我们可以使用packr来打包exe,网上教打包exe的基本上都是用什么exe4j麻烦还不知道干啥的,基本不成功!现在是2021年11月14日15:21:51思路可以参考这篇文章:https://blog.csdn.net/weixin_44480167/article/details/120895260下面我将一个简单javafx的demo打包成exe,若你想打包成m原创 2021-11-14 16:44:27 · 6256 阅读 · 16 评论 -
JAVA17安装体验JFX17抢先体验
JAVA17安装体验JFX17抢先体验java17版本是长期支持版,至少更新5年以上。而且商用免费!这里我就来体验一把。一、下载配置 java 17官网下载地址:https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html当前的版本是17.0.1 2021年11月14日13:37:42下载zip版本,解压到C:\Program Files\Java\jdk-17.0.1,接着配置环境变量。二、多jdk原创 2021-11-14 15:14:08 · 5734 阅读 · 1 评论 -
JavaFx之从controller关闭stage(十八)
JavaFx之从controller关闭stage(十八)开发时,我们需要从controller的button时间中关闭当前,那么你的按钮事件可以这样:cancel.setOnMouseClicked(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { // 像这样关闭舞台会绕过 onCloseRequest 事件处理程序(如果有的话) Stag原创 2021-11-09 01:21:40 · 1726 阅读 · 0 评论 -
JavaFx之controlsfx8下载(十七)
JavaFx之controlsfx8下载(十七)controlsfx是JavaFx功能的扩展补充,这里我使用java8,我将源码下载下来并编译好jar,在java8的环境双击运行runSamples.bat即可:我用阿里云盘分享了「controlsfx-samples-8.40.19-SNAPSHOT」,你可以不限速下载复制这段内容打开「阿里云盘」App 即可获取链接:https://www.aliyundrive.com/s/1QGst4g36RZ用法可下载源码进行参照...原创 2021-11-07 22:26:10 · 1067 阅读 · 0 评论 -
JavaFx之SceneBuilder添加其他依赖库(十六)
JavaFx之SceneBuilder添加其他依赖库(十六)Could not open ‘xxxxx.jar’Open operation has failed. Make sure that the chosen fileis a valid FXML document当我们使用SceneBuilder编辑jfoenix、controlsfx其他的一些库时,会发现无法解析XML,这时我们需要手动添加jfoenix、controlsfx依赖库到SceneBuilder一、方式一添加依赖找到Sc原创 2021-11-07 02:49:33 · 2058 阅读 · 0 评论 -
JavaFx之Ikonli图标库大全(十五)
JavaFx之Ikonli图标库大全(十五)Ikonli给java提供了大量的图标库,官网:https://kordamp.org/ikonli/Ikonli 提供了可以在 Java 应用程序中使用的图标包。目前支持 Swing 和 JavaFX UI 工具包。其中ikonli有非常多图标库,下面我只显示fontawesome,想要其他图标可引入对应依赖即可。这里我演示使用javafx+java 8:ikonli-javafx-12.2.0 (JDK 11+)或ikonli-javafx-2.原创 2021-11-07 01:25:46 · 3258 阅读 · 0 评论 -
JavaFx之整合JFoenix(十四)
JavaFx之整合JFoenixJFoenix是JavaFx流行的UI框架之一github:https://github.com/sshahine/JFoenix整合Maven<!--https://github.com/sshahine/JFoenix--><dependency> <groupId>com.jfoenix</groupId> <artifactId>jfoenix</artifactId>原创 2021-11-06 23:49:55 · 4407 阅读 · 2 评论 -
SpringBoot整合JavaFx(十三)
SpringBoot整合JavaFx(十三)在Java中,基本上万物可springboot…JavaFx也能整合springboot,下面我就演示javafx+springboot操作数据库吧,学习了下面的方式,针对其他main工程也适用。整合过程主要分三步:1、引入springboot依赖2、配置3、获取bean特别注意第三点,首先知道javafx的内部是static,无runtime,所以在springboot+javafx中获取容器Bean属于静态获取。一、配置用IDEA初始化一原创 2021-11-04 17:02:46 · 8963 阅读 · 13 评论 -
JavaFx实现一个遮罩(十二)
JavaFx实现一个遮罩(十二)JavaFx从入门到入土系列StackPane 在一个从后到前的堆栈中布置其子项。子项的 z 顺序由子项列表的顺序定义,第 0 个子项位于底部,最后一个子项位于顶部。如果设置了边框和/或填充,则子项将被布置在这些插图中。使用 StackPane 的setPadding(new Insets(0, 0, 0, 0));将子项内容铺满。遮罩我就直接拿开源的了 controlsfx 的 MaskerPane 用法<dependency> <g原创 2021-09-20 23:54:29 · 1193 阅读 · 0 评论 -
JavaFx的属性、集合绑定事件(十一)
JavaFx的属性、集合绑定事件(十一)JavaFx从入门到入土系列JavaFX属性存储控件的内部状态,并允许我们监听来自变量的状态更改。JavaFX属性可以彼此绑定。绑定行为允许属性根据来自另一个属性的更改值来同步其值。相互绑定可根据下面的思路去实现监听基本类型变动监听 还有 SimpleStringProperty、SimpleObjectProperty 等等基本类型public class Test04 extends Application { private Integer原创 2021-09-20 14:14:07 · 839 阅读 · 0 评论 -
JavaFx添加事件处理addEventHandler(十)
JavaFx添加事件处理addEventHandler(十)JavaFx从入门到入土系列有时候我需要给一些元素标签添加事件,例如点击事件、鼠标停留事件、按键输入事件等等,这时我们需要用到addEventHandler下面是添加一个点击事件:MouseEvent.MOUSE_CLICKEDpublic class Test03 extends Application { @Override public void start(Stage stage) throws Exception原创 2021-09-20 13:29:34 · 2152 阅读 · 0 评论 -
JavaFx使用RxJava套餐(九)
JavaFx使用RxJava套餐(九)JavaFx从入门到入土系列我们知道,在子线程中无法更新UI的,可以使用Platform.runLater(command);将执行的事件发往主线程更新UI。那么问题来了,我们异步请求服务器怎么处理?假设如下场景:在UI中显示服务上线进度那么你的代码可能是这样public class JavaFxDemo extends Application { @Override public void start(Stage stage) throws原创 2021-09-20 00:04:47 · 673 阅读 · 1 评论 -
Not on FX application thread(八)
JavaFX 从入门到入土系列当你不在主线程中操作UI时会出现以下异常:Not on FX application thread可以通过下面的的方法在非主线程中操作UI,因为主线程负责渲染和生命周期,其他线程想更新UI,可以通过Platform.runLater来将运行发送到主线上执行,安卓也是这种思路。Platform.runLater(new Runnable() { @Override public void run() { password.setTe原创 2021-09-19 16:48:51 · 324 阅读 · 0 评论 -
JavaFx Maven配置推荐(七)
JavaFx Maven配置推荐JavaFX 从入门到入土系列开发Java Fx,推荐使用Maven管理项目,下面是常用到的配置基于jdk11+ <!-- 打成 jar 包 --> <packaging>jar</packaging> <properties> <maven.compiler.source>11</maven.compiler.source> <mave原创 2021-09-18 09:34:59 · 2029 阅读 · 0 评论 -
JavaFx 打包jar(六)
JavaFx 打包jarJavaFX 从入门入门到入土系列我们编写了不少javafx,那么如何打包成jar给用户呢?下面我给出比较全的打包方式。打包jar下面我给出比较全的打包方式。1. Maven项目打包Maven项目打包首先需要修改pom.xml,添加maven-jar-plugin插件<packaging>jar</packaging> <properties> <!--打包编码--> <proje原创 2021-09-18 01:24:26 · 3181 阅读 · 2 评论 -
JavaFx FXML入门(五)
JavaFx FXML入门JavaFx的FXML类似安卓中的视图文件,可以添加样式,添加css,添加id然后在java代码中绑定点击事件。可以使用工具编辑:SceneBuilder 下载地址:https://openjfx.cn/scene-builder/更多介绍可以看官网文档:https://openjfx.cn/javadoc/16/javafx.fxml/javafx/fxml/doc-files/introduction_to_fxml.html环境jdk11编写一个FXML我这里使用S原创 2021-09-18 00:07:05 · 915 阅读 · 0 评论 -
JavaFx 打开一个新窗口和窗口交互(四)
JavaFx 打开一个新窗口和窗口交互JavaFX 从入门入门到入土系列前面我演示的demo都是单个窗口,那么如何实现多个窗口呢?使用Stage secondStage = new Stage();然后secondStage.show();展示即可。import javafx.application.Application;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.Sc原创 2021-09-17 23:37:28 · 4441 阅读 · 1 评论 -
JavaFx css样式(三)
JavaFx css样式JavaFX 从入门入门到入土系列JavaFx css样式,前面我说过它类似html,他有css控制样式,不过最新的css标准并不支持,同时javafx的css样式都以 -fx-开头,列如设置背景颜色..bg{ -fx-background-color: #1EC6FC;}更多详细参考官网文档:https://openjfx.cn/javadoc/16/javafx.graphics/javafx/scene/doc-files/cssref.htmlcss样式需要原创 2021-09-17 23:10:17 · 2083 阅读 · 0 评论 -
JavaFx设置图标(二)
JavaFx设置图标JavaFX 从入门入门到入土系列JavaFx设置图标,需要注意,我这里是Maven管理项目需要将图片放到resources/img/avatar.jpg下import javafx.application.Application;import javafx.scene.image.Image;import javafx.stage.Stage;/** * @author lingkang * @date 2021/9/17 22:29 * @description原创 2021-09-17 22:37:32 · 4936 阅读 · 2 评论 -
JavaFX入门(一)
JavaFX入门JavaFX入门入门到入土系列JavaFX 是一个开源的下一代客户端应用平台,适用于基于Java构建的桌面、移动端和嵌入式系统。 它是许多个人和公司的共同努力的成果,目的是为开发丰富的客户端应用提供一个现代、高效、功能齐全的工具包。需要注意,jdk11以上不带javaFX需要自己去下载https://openjfx.cn/dl/可以使用Maven:<dependencies> <dependency> <groupId>o原创 2021-09-17 22:26:33 · 1449 阅读 · 1 评论