- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个 JPanel 组件,其中包含一个带有嵌入 YouTube 视频的浏览器的 JFXPanel。我使用的是 YouTube 中的视频嵌入网址(即 https://www.youtube.com/embed/W-J2OYN9fF8?autoplay=true&controls=0 )。
我可以将 JPanel (VideoPlayer
) 添加到周围的组件,没有任何问题。但是 - 当我删除 VideoPlayer 时,我还想停止 YouTube 播放器。截至目前 - 它一直在后台播放(带有烦人的声音)。我猜我必须以某种方式进入 JFX 线程...所以,如果有人可以帮助我将代码放入 stopTrailer()
方法 - 我将非常感激!
这是我当前的代码。对于那些正在寻找一种简单方法将 JFX YouTube 播放器嵌入到普通 JPanel 中的人来说 - 这非常有效 - 除了上述限制之外......
public class VideoPlayer extends JPanel {
private Stage stage;
private WebView browser;
private JFXPanel jfxPanel;
private WebEngine webEngine;
private String videoUrl;
public VideoPlayer(String url){
this.videoUrl = url;
jfxPanel = new JFXPanel();
createScene();
setLayout(new BorderLayout());
setPreferredSize(new Dimension(800, 560));
add(jfxPanel, BorderLayout.CENTER);
}
private void createScene() {
PlatformImpl.startup(new Runnable() {
@Override
public void run() {
stage = new Stage();
stage.setTitle("Video");
stage.setResizable(true);
Group root = new Group();
Scene scene = new Scene(root,80,20);
stage.setScene(scene);
//Set up the embedded browser:
browser = new WebView();
webEngine = browser.getEngine();
webEngine.load(videoUrl);
ObservableList<Node> children = root.getChildren();
children.add(browser);
jfxPanel.setScene(scene);
}
});
}
public void stopTrailer() {
}
}
最佳答案
这个问题的答案其实很简单。我将以下内容放入 stopTrailer 方法中。
public void stopTrailer() {
PlatformImpl.startup(new Runnable() {
@Override
public void run() {
remove(jfxPanel);
webEngine.load(null);
}
});
}
它实际上所做的是将浏览器webEngine
重新加载到“地址”null。并拆除面板。这对我来说似乎有点奇怪,因为我会将此代码解释为第二个线程的开始 - 而无需访问第一个线程。也许有人可以解释这是如何工作的?
关于java - 停止 JFX 嵌入的 YouTube 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26473613/
我正在使用 Jfoenix,有一件事困扰着我。只要我没有按下 JFX ComboBox,提示文本就会显示在 JFX ComboBox 中。是否可以将其直接放在组合框上方,就像单击该框后一样? 未单击
我正在尝试拥有一个与其父级一起缩放的 ImageView。我搜索了所有我能找到的 StackOverflow 帖子,这是我尝试过的: taggedImage.setPreserveRa
我目前正在尝试使用带有 predicate 的 FilteredList 来过滤我的 TableView 中的数据。我有 2 个 ComboBoxes 来过滤值。 我的表包含结果。每个 Result
我尝试了很多方法来删除我的 JFX 元素框架中的舞台按钮。我正在使用装饰器来更新设计。 我只想删除最大化、调整大小和最小化按钮。不应删除关闭按钮。你能给我一个提示,我该如何处理这个问题? JFXDec
我已经在我的元素中初始化了一个装饰器,它一开始看起来很漂亮。但是现在我遇到了几个问题,我没有弄清楚如何更改边框颜色(目前是黑色)。我还想删除调整窗口大小的按钮。 这是涉及装饰器的代码: public
那么有什么方法可以去除选项卡后面的灰色区域: 我试过用 CSS 做到这一点,但没有找到方法。 最佳答案 要在 CSS 文件中设置标签页标题的背景颜色: .tab-pane .tab-header-ar
我有一个使用 java 1.6 编译并使用 jnlp/webstart 运行的现有应用程序。如果我使用 JRE 1.6 从客户端运行此应用程序,一切都会很好。但是,当我使用 java JDK 7 编译
我想将 java.awt.Panel 添加到我的 JavaFX8 应用程序中。不幸的是,当附加到 SwingNode 时,面板似乎不会被渲染。 我有一个简单的测试应用程序: import java.a
这是我的代码。编译时,网格 Pane 中仅显示按钮和标签,但图像不会显示。我将图像放入资源文件中,认为这可以解决问题,但仍然不会显示。 公共(public)类Main扩展应用程序{ @Override
我正在开发一个依赖于 JFX 实例运行的单元测试,但是当 Bitbucket 执行测试时,它在初始化 JFXPanel 时失败。 这是我的位桶管道: pipelines: default:
我在 VBox 中添加了一个 Label,它被 Scrollpane 进一步包装。这样做时,我的 Label 样式不起作用。 我这里有密码。当我删除滚动 Pane 时它工作正常。 package ja
我有一个 JPanel 组件,其中包含一个带有嵌入 YouTube 视频的浏览器的 JFXPanel。我使用的是 YouTube 中的视频嵌入网址(即 https://www.youtube.com/
我想为 Open Java FX 8 实现 MultipleSelectionModel ComboBox,其中包括 ControlFX CheckComboBox 的所有功能(如 this post
美好的一天,我正在尝试在 ubuntu 虚拟机上运行一个名为 graphdb-native-app-8.8.1-jfx.jar 的程序。我安装了最新版本的 java,并确保 JAVA_HOME 设置为
我和我的团队有一个 maven 项目,使用 jdk1.8(未打开 jdk)和 javaFX 作为我们的 UI。它运行良好,但仍有很多工作要做,我们希望使用 Bitbucket 的管道来进行持续集成。
本文整理了Java中com.nexitia.emaginplatform.jfx.core.engine.components.listform.YesNoListFormCellPresenter类
我正在尝试使用 JavaFX 和 Maven 构建一个可执行文件。 'clean javafx:run' 工作正常,但是当我运行 'mvn clean jfx:jar'(在 eclipse 或 c
我对 121 之后的 Java 更新感到很兴奋。但是每个后续版本都使 Java FX Web View 变得越来越差,并且越来越难以维护与最新版本一致的 web kit 基本功能的网络工具包。 一个示
我们正在尝试 JavaFX 的多点触控功能,但似乎效果不佳。 在细节上,我们试图在 javafx.scene.layout.Pane 中拦截事件: onSwipeDown 向左滑动 向右滑动 onSw
我正在开发一个 JavaFX 应用程序,我希望它能自动更新。我正在使用 JavaFX Maven Plugin并为每个操作系统构建本地包(JavaFX Maven 插件使用 javapackager)
我是一名优秀的程序员,十分优秀!