草庐IT

rx-javafx

全部标签

JavaFX 从 Controller 获取场景

我最近开始研究JavaFX、FXML和场景生成器,并且一直在尝试将关键监听器添加到场景的其中一个Controller。但是,当我这样做时,关键的听众并没有像他们应该的那样工作,我认为这是因为他们没有专注于那个特定的场景。我试图访问Controller所属的场景以便直接设置它,但结果是它是空场景的一部分。有没有一种方法可以访问使用此Controller的场景,以便尝试将关键事件和监听器分配给该特定场景?我应该通过整个应用程序中静态的rootController吗?或者,更好的是,是否有更简单的方法来解决这个问题?我看到的大多数示例都假设所有内容大部分都在一个主类中,或者在没有引入FXML

媒体对象上的 javafx 未知持续时间

我是Java和JavaFX的新手,过去几年我一直在使用QT在Python上进行开发,现在我正在使用Java和JavaFX进行开发。我正在开发一个程序,可以在用户设定的时间播放音乐文件,然后停止。因此,我需要从媒体对象获取持续时间,以便告诉音频何时停止(基于用户输入的时间),但是,媒体对象上的getDuration()方法总是返回未知。我在Windows8.1和openSuSE13.2(都有同样的问题)上使用JDK8u25(最新的稳定版本):Filefilestring=newFile("my/file/dir/file.mp3")Mediafile=newMedia(filestrin

JavaFx 2.0 游戏引擎/框架——JavaFx 2.0 将如何改变 Java 游戏?

我知道JavaFx2.0推出的时间很短,但希望有人知道FX2.0游戏引擎(或者甚至是开源开发中的此类项目)?我一直找不到一个-所以如果你找到了,请指出正确的方向。我还想知道JavaFX2.0将如何改变java游戏编程。从我读过的内容和我做过的小实验来看,我可以肯定地说,编写代码要愉快得多。而且我相信它运行在比常规Javaswing或基于awt的东西更快的硬件加速图形引擎上。但它是否足以支持任何复杂度的整个游戏框架? 最佳答案 JavaFX非常适合简单的基于浏览器的/2D游戏——Flash目前最常见的领域。原因:2D应用程序的出色性能

java - slider 与进度条 JavaFX 的混合

我想像在slider上一样处理ProgressBar上的点击。并学习一定百分比的轨道。我会使用slider而不是progressbar但它没有突出显示的轨道直到拇指。我需要创建一些东西,比如在播放歌曲的音乐播放器中的进度,以及通过点击进度来寻找的可能性。有人知道我该怎么做吗? 最佳答案 这是另一种方法。slider和进度条的真正混合:)。认识SlidoProgressBar!publicclassSlidoProgressBarDemoextendsApplication{@Overridepublicvoidstart(Stage

java - 在 JavaFX 中显式定位节点

当我点击一个按钮时,它改变了它的位置。但是当我移动鼠标时,按钮又回到了场景的中心,为什么?我有以下代码:publicclassHolaMundoextendsApplication{Buttonbtn;Scenescene;@Overridepublicvoidstart(StageprimaryStage){btn=newButton();btn.setText("HolaMundo");StackPaneroot=newStackPane();root.getChildren().add(btn);scene=newScene(root,300,250);primaryStage.

Javafx Listview 添加和编辑元素

我想直接向ListView添加和编辑元素:/**Tochangethislicenseheader,chooseLicenseHeadersinProjectProperties.*Tochangethistemplatefile,chooseTools|Templates*andopenthetemplateintheeditor.*/packagejavafx_test;importjava.util.Observable;importjavafx.application.Application;importjavafx.collections.FXCollections;impo

JavaFX Canvas 未拾取关键事件

我有以下代码显示具有3个连续helloworld的JavaFXCanvasStackPaneroot=newStackPane();Canvascanvas=newCanvas(250,250);canvas.setOnMouseEntered((a)->System.out.println("hi"));canvas.setOnMousePressed((a)->System.out.println("focus"));canvas.setOnKeyReleased(newEventHandler(){@Overridepublicvoidhandle(KeyEventevent){

java - JavaFx/FXML 中的 "Node"是什么?

JavaFx/FXML上下文中的“节点”一词是什么意思?如果我搜索这个问题,我发现的只是人们使用该术语讨论其他问题,但没有任何解释。例如,这个问题的答案:HowdoIopentheJavaFXFileChooserfromacontrollerclass?:Foranynodeinyourscene(forexample,therootnode;butanynodeyouhaveinjectedwith@FXMLwilldo),dochooser.showOpenDialog(node.getScene().getWindow());节点是什么,我将如何“用@FXML注入(inject

java - 如何在 JavaFX 中获取当前打开的阶段?

有没有办法在JavaFX中获取当前打开的Stage(如果有一个打开的)?像这样:StagenewStage=newStage();newStage.initOwner(JavaFx.getCurrentOpenedStage());//Likethis 最佳答案 Java9通过添加javafx.stage.Window.getWindows()方法使这成为可能。因此,您可以获取Windows列表并查看正在显示的内容Listopen=Stage.getWindows().stream().filter(Window::isShowin

java - 如何等待过渡在 javafx 2.1 中结束?

我的场景只包含一个ImageView,显示图像。我想将图像淡化为黑色(场景的指定颜色),然后一段时间后,再次从黑色淡化为图像。我找到了FadeTransition非常适合这个目的。这是我的一段代码://fadetoblacktransitionFadeTransitionft1=newFadeTransition(Duration.millis(2000),myImageView);ft1.setFromValue(1.0);ft1.setToValue(0.0);ft1.play();//fadefromblacktransitionFadeTransitionft2=newFade