我现在遇到了JavaFX的一个小问题。 我试图在我的代码中做一个文件select,我可以指向一个文件夹,而不是一个文件。 目前我没有解决scheme。 你知道一个解决方法(除了使用JFileChooser从swing)? 非常感谢提前的答案 编辑:我已经得到了一个答案,试图testing它,但我忘了提及JavaFX的版本。 这是几天前发布的最新的2.0.3稳定版本(但是最初的非beta 2.0和2.0.1也有这个问题)
我的布局问题 我有一个ListView问题,我不知道是否是因为我缺less一些知识,或者如果我的方法有缺陷。 不得不承认,我还不清楚JavaFX在很多可能的情况下如何处理布局。 上面的屏幕截图显示了我使用完全相同的代码得到两次的结果,只是在第二个屏幕上显示了用于debugging 的可见形状 。 由CellFactory扩展Group涉及的各个类,我尝试与其他一些Parent没有太多的成功到目前为止。 如何重现 我没有分享我的StarShape , StarRow和其他一些misc类(如果需要我很乐意),我写了一个样例来重现这个问题。 这个类扩展了Application并覆盖了start(…)方法,如下所示: @Override public void start(Stage primaryStage) throws Exception { final StackPane root = new StackPane(); final Scene scene = new Scene(root, 400, 600); final ListView<Boolean> listView = new ListView<>(); listView.setCellFactory(this::cellFactory); for (int i = 0; i < 5 ; i++) { listView.getItems().add(true); listView.getItems().add(false); } […]
我有一个ID historytypes为TableView的元素。 我如何find并访问这个对象,如果我有Scene scene的实例?
我在去年对JavaFX进行了一些研究,甚至用它构build了一些基本的桌面应用程序。 它被描述为用于创buildRIA(富互联网应用程序)。 http://en.wikipedia.org/wiki/Javafx 但是真的可以通过networking浏览器来部署吗? 我只通过一个可执行的JAR文件来部署它。 通过networking浏览器部署有多容易? 它工作吗? 有人对此有经验吗? http://docs.oracle.com/javafx/2/deployment/deployment_toolkit.htm
在Swing中,当窗口closures时,只需使用setDefaultCloseOperation()closures整个应用程序即可。 但是在JavaFX中,我找不到一个等价的东西。 我打开了多个窗口,如果窗口closures,我想closures整个应用程序。 在JavaFX中如何做到这一点? 编辑: 我明白,我可以重写setOnCloseRequest()在窗口closures执行一些操作。 问题是应该执行什么操作来终止整个应用程序? stage.setOnCloseRequest(new EventHandler<WindowEvent>() { @Override public void handle(WindowEvent event) { stop(); } }); Application类中定义的stop()方法什么也不做。
我一直在做这方面的研究,但我仍然非常困惑,至less可以说。 任何人都可以给我一个具体的例子,何时使用Task ,何时使用Platform.runLater(Runnable); ? 究竟是什么区别? 什么时候使用这些方法是否有一条金科玉律? 还纠正我,如果我错了,但不是这两个“对象”的方式创build另一个线程内的GUI(用于更新graphics用户界面)的主线程?
我想从我的控制器类处理舞台事件(即隐藏)。 所以我所要做的就是添加一个监听器 ((Stage)myPane.getScene().getWindow()).setOn*whatIwant*(…); 但问题是,初始化之后就开始了 Parent root = FXMLLoader.load(getClass().getResource("MyGui.fxml")); 和之前 Scene scene = new Scene(root); stage.setScene(scene); 因此.getScene()返回null。 我自己发现的唯一的解决方法是添加一个监听器myPane.sceneProperty(),当它变得不为空,我得到场景,添加到它的.windowProperty()我!该死的! 监听器处理,我终于检索阶段。 而这一切都以设置所需的听众到舞台事件结束。 我觉得听众太多了。 这是解决我的问题的唯一方法吗?
当试图在我的新的Java 8项目中使用javafx相关的类时,我得到了来自eclipse的访问限制错误。 到目前为止,我所能find的唯一“解决scheme”是告诉eclipse忽略访问限制,但是我对此并不满意。 一个错误的例子: Access restriction: The type Pane is not accessible due to restriction on required library C:\Program Files\Java\jre8_0\lib\ext\jfxrt.jar 我正在使用Eclipse Kepler和Java JDK的Eclipse JDT补丁。 这似乎是与JavaFX不是JavaSE执行环境的一部分相关的问题。 根据http://en.wikipedia.org/wiki/JavaFX,我现在很困惑,javaFX是JavaSE的一部分。 Eclipse有没有可能认识到它是javaSE的一部分?
我最近下载了与NetBeans捆绑在一起的JDK 1.8.0.0_06。 然后我发现我在Java 1.7中开发的JavaFx项目不能在Java 1.8中编译,因此我将JDK降到了1.7。 但我仍然无法得到它的工作/编译。 我得到这个错误: javac: invalid target release: 1.8 Usage: javac <options> <source files> 我真的卡住了,非常感谢任何帮助。
所以,在JavaFX上削减我们的牙齿,到目前为止,事情正在顺利进行。 但是,所有的文本字段都有一行,从顶部开始是10px左右。 不仅在我的应用程序中,而且在SceneBuilder应用程序中。 请注意,我没有使用任何显式的CSS,我不知道SceneBuilder使用什么。 屏幕截图来自SceneBuilder,我的屏幕看起来完全相同。 所以,这是根本的。 java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) 在Mac OS 10.9.5上 只是好奇,如果有人看到这个,并有一个build议。 编辑:我下载了样品,这显然是与摩德纳主题。 里海主题看起来很好。 以下是Modena.jar TextFields部分的屏幕截图。 有趣的是, TextArea遭受类似的问题,虽然不像TextField那样普遍。 更多补充: 人们不停地叫嚷着,所以在这里。 我基本上只是遵循这个: https : //docs.oracle.com/javafx/2/get_started/form.htm,并使用默认的Netbeans 8.0.2 JavaFX应用程序项目。 只需从网站上剪切并粘贴即可。 public class Fxlinetest extends Application { @Override public void start(Stage […]