From 11e0676082f4d77548401082674cf770b7a92022 Mon Sep 17 00:00:00 2001 From: zhangmeng <1334717033@qq.com> Date: Fri, 17 Feb 2023 16:45:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84vip=20=E8=A7=A3=E6=9E=90=2020?= =?UTF-8?q?23=E5=B9=B42=E6=9C=8817=E6=97=A516:45:39?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/controller/VipParserController.java | 58 ++++++++++++++++++- .../controller/VipParserPlayerController.java | 20 +++++++ .../resources/fxml/vip-parser-player.fxml | 10 ++++ src/main/resources/fxml/vip-parser.fxml | 2 +- 4 files changed, 87 insertions(+), 3 deletions(-) create mode 100644 src/main/java/com/zhangmeng/tools/controller/VipParserPlayerController.java create mode 100644 src/main/resources/fxml/vip-parser-player.fxml diff --git a/src/main/java/com/zhangmeng/tools/controller/VipParserController.java b/src/main/java/com/zhangmeng/tools/controller/VipParserController.java index 027860e..b33deea 100644 --- a/src/main/java/com/zhangmeng/tools/controller/VipParserController.java +++ b/src/main/java/com/zhangmeng/tools/controller/VipParserController.java @@ -1,21 +1,40 @@ package com.zhangmeng.tools.controller; +import com.zhangmeng.tools.utils.AlertUtils; +import com.zhangmeng.tools.utils.ResourcesUtils; import javafx.collections.FXCollections; import javafx.collections.ObservableList; +import javafx.event.EventHandler; import javafx.fxml.FXML; +import javafx.fxml.FXMLLoader; +import javafx.scene.Node; +import javafx.scene.Scene; import javafx.scene.control.ComboBox; +import javafx.scene.control.TextField; +import javafx.scene.layout.AnchorPane; +import javafx.scene.web.WebEngine; +import javafx.scene.web.WebView; +import javafx.stage.Stage; +import javafx.stage.WindowEvent; import javafx.util.StringConverter; +import lombok.extern.slf4j.Slf4j; + +import java.io.IOException; /** * @author : 芊芊墨客 * @version : 1.0 * @date : 2023-02-16 09:19 */ +@Slf4j public class VipParserController { @FXML private ComboBox comboBox; + @FXML + private TextField input_text; + @FXML public void initialize() { @@ -26,7 +45,7 @@ public class VipParserController { comboBox.setConverter(new StringConverter() { @Override public String toString(URLS object) { - if (object == null){ + if (object == null) { return ""; } return object.getName(); @@ -43,8 +62,43 @@ public class VipParserController { } @FXML - public void player(){ + public void player() { + log.info("点击解析:{}", comboBox.getSelectionModel().getSelectedItem().name); + if (input_text.getText().length() == 0){ + AlertUtils.alert_warning("请输入解析地址!"); + return; + } + + String url = comboBox.getSelectionModel().getSelectedItem().url; + String path = url + input_text.getText(); + + AnchorPane root = null; + try { + root = FXMLLoader.load(ResourcesUtils.getResource("vip-parser-player")); + } catch (IOException e) { + e.printStackTrace(); + } + + WebView webView = (WebView) root.lookup("#webView"); + WebEngine engine = webView.getEngine(); + engine.load(path); + + Stage stage = (Stage) this.comboBox.getScene().getWindow(); + stage.hide(); + + Scene scene = new Scene(root); + Stage player_stage = new Stage(); + player_stage.setScene(scene); + player_stage.setTitle("播放"); + player_stage.setWidth(1600); + player_stage.setHeight(800); + player_stage.setFullScreen(true); + player_stage.setOnCloseRequest(windowEvent -> { + log.info("播放关闭"); + stage.show(); + }); + player_stage.show(); } public enum URLS { diff --git a/src/main/java/com/zhangmeng/tools/controller/VipParserPlayerController.java b/src/main/java/com/zhangmeng/tools/controller/VipParserPlayerController.java new file mode 100644 index 0000000..51bdf34 --- /dev/null +++ b/src/main/java/com/zhangmeng/tools/controller/VipParserPlayerController.java @@ -0,0 +1,20 @@ +package com.zhangmeng.tools.controller; + +import javafx.fxml.FXML; +import javafx.scene.web.WebView; + +/** + * @author : 芊芊墨客 + * @version : 1.0 + * @date : 2023-02-17 16:29 + */ +public class VipParserPlayerController { + + @FXML + private WebView webView; + + @FXML + public void initialize() { + + } +} diff --git a/src/main/resources/fxml/vip-parser-player.fxml b/src/main/resources/fxml/vip-parser-player.fxml new file mode 100644 index 0000000..1d1d97d --- /dev/null +++ b/src/main/resources/fxml/vip-parser-player.fxml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/main/resources/fxml/vip-parser.fxml b/src/main/resources/fxml/vip-parser.fxml index b976df9..be29e08 100644 --- a/src/main/resources/fxml/vip-parser.fxml +++ b/src/main/resources/fxml/vip-parser.fxml @@ -9,7 +9,7 @@