Tag: fxml

将控制台输出重定向到JavaFX TextArea?

我想在JavaFX TextArea中显示控制台输出…遗憾的是我找不到JavaFX的任何工作示例,但仅针对Java Swing,这在我的情况下似乎不起作用。 编辑: 我试着效仿这个例子: http : //unserializableone.blogspot.ch/2009/01/redirecting-systemout-and-systemerr-to.html 并扩展了我的代码,如下所示。 但是,我的Eclipse IDE中没有控制台输出,但TextArea中也没有输出。 知道我做错了吗? public class Activity extends OutputStream implements Initializable { @FXML public static TextArea taRecentActivity; public Activity() { // TODO Auto-generated constructor stub } @Override public void initialize(URL location, ResourceBundle resources) { OutputStream out = new OutputStream() { @Override public void write(int b) throws IOException […]

从combobox中选择多个项目

请问我想知道如何更改javafxmlcombobox的选择模型,以便它可以允许多个选择。 任何贡献将不胜感谢。

无法从JavaFX中的MenuItem获取场景

我试图基于menuItem单击更改javafx阶段中的场景。 这是我的sample.fxml: 这是我的Controller.java: package sample; import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.Node; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.scene.control.MenuItem; import javafx.stage.Stage; import java.net.URL; import java.util.ResourceBundle; public class Controller implements Initializable { @FXML protected void onManageAccountsMenuActionPerformed(ActionEvent event) { System.out.println(“Manage Accbtnclick”); // Node node=(Node) event.getSource(); // Stage stage=(Stage) node.getScene().getWindow(); // // Scene scene = new Scene(root); // […]

寻求FXML / FXMLLoader错误诊断工具

概观 嗨,这是一个大纲用例。 我有一个在JavaFX Scene Builder中开发的看似有效的FXML文件。 它现在是一个非常重要的XML块,并且在FXML文件中的某处存在运行时加载错误。 使用“预览”选项,Scene Builder可以正常工作。 我有一个’ simple .fxml’文件,用于validation控制器是否按预期工作,即相同的控件和事件,但没有额外的FXML布局。 而且我已经和我正在进行剪切代码和测试循环以识别带有问题的XML。 所以我会在某个时候深究这一点。 目前在Scene Builder和Netbeans FXML编辑器中都没有显示错误,我没有像“ JavaFX – 加载FXML文件错误 ”(#1)那样出现加载错误 。 我得到的只是runnable中结束任务的一个例外,它说加载器引发了exception。 目标(S) 发生这些错误。 问题是FXML文件疑难解答可用或正在开发哪些工具? 一些想法,问题或选择: 这是一个错误吗? 要记住作为装载机的黑盒子应该发出某种指示,例如第246行的失败或“…表示在哪里看的东西。 您有哪些技巧,技巧或建议可以更快地找到/解决此类错误? 有没有地方可以使用Include FXMLLoader类有什么钩子可以在错误发生之前捕获或捕获错误? 是否有任何记录或诊断FXMLLoader处理的工具? 有没有人写过可以这种方式使用的自定义FXMLLoader? (见#3)。 我看到FXML使用SAX,是否可以包装或挂钩解析器并为FXMLLoader提供备用解析器? 是否有用于分析FXML和Java应用程序的静态工具 – 如FXML Lint或其他东西? 什么深刻的FXML加载,解析,运行时信息可用于处理FXML。 是否存在或可能会在控制器中添加或注入一些额外的入口点以捕获FXML负载问题? 例如,可以级联控制器,以便我可以创建一个“根控制器”,它可以捕获更接近原点的问题。 目前,只有在编辑人员看不到任何内容时才会在加载时发现的FXML中的问题只是耗时且不可预测。 如果有人,我想看一些诊断工具 进一步的见解 这些是开发过程中出现的一些相关的“ 调试 ”和“ 故障排除 ”技巧。 也许其中一些可能会在某一天进入FXMLvalidation器或Lint工具(?)这些点没有特定的顺序,它们的编号用于交叉引用。 FXML中的任何控制器标识符都必须存在并使用@FXML在Java代码中进行注释。 如果缺少注释,FXML将无法加载。 每个使用@FXML注释的Java名称都应该在FXML标记文件中。 说一个名为“myLabel”的标签:如果代码中使用的myLabel会出现NullPointerException。 […]

JavaFX 2.0 + FXML。 从其他任务更新场景值

我想从我加载FXMLoader的场景中获取控制器。 用例是: 我的JSON管理器收到一个JSON对象 我启动的任务显示了一个新的场景使用 Parent p = FXMLLoader.load(getClass().getResource(“foo.fxml”)); Scene scene = new Scene(p); stage.setScene(scene); 在那之后,我有空场景。 现在我这样做来填充组件 AnchorPane pane = (AnchorPane)((AnchorPane) scene.getRoot()).getChildren().get(0); for(Node node : pane.getChildren()){ String id = node.getId(); if(id.equals(NAME)){ ((TextField)node).setText(value); } } 我的问题是,有更简单的方法吗? 我有一个FXML中指定的控制器 我想获取带有绑定值的实例(在这种情况下,TextField名为name) 提前致谢

如何引用primaryStage

我使用.fxml-Files作为我的应用程序的视图层。 每个fxml都附有一个控制器 我们假设我有一个mainFrame和它的控制器。 mainFrame.fxml在start(Stage) -method中加载。 现在你要显示一个附加到Stage / Window / Whatever的fileChooser。 为此,让fxml-controller知道例如 primaryStage 。 有没有办法将它注入控制器,或者FXML在运行时是否知道它属于哪个场景和阶段? 我只有想法是将primaryStage存储在一些静态上下文中,但这似乎不是一种对我这样做的方法。

如何在窗格内加载fxml文件?

如果我们有一个Stage那么Scene包括2个Pane第一个Pane包含Button而第二个Pane是空的,我们可以在第二个窗格内加载其他fxml文件吗? fxml1: VBox |_Pane1–>Button |_Pane2 /////////////// fxml2: Pane–> Welcome to fxml 2 “when we click the button load the fxml2 inside Pane2 of fxml1” 然后点击 ====我终于在尝试后找到了这个作品!====谢谢你们 @FXML Pane secPane; public void loadFxml (ActionEvent event) { Pane newLoadedPane = FXMLLoader.load(getClass().getResource(“/application/fxml2.fxml”)); secPane.getChildren().add(newLoadedPane); }

JavaFX类控制器场景参考

有没有办法从关联的类控制器获取FXML加载文件的Scene对象。 我正在做这样的事情: @FXML private AnchorPane anchor; Scene scene = anchor.getScene(); 但我想要一个不引用AnchorPane控件的解决方案。

在JavaFX中使用1个阶段和多个场景登录应用程序

我正在做一个时间轴项目。 我已经成功创建了一个登录系统和菜单,但是当我按下按钮时,我会这样做,它将打开一个新窗口(带有舞台,场景)。 我读过这不是最好的方法。 最好的方法是只有1个主要阶段,而那个是我启动应用程序时的登录。 但我已经找到了有关一个阶段的多个场景的信息,但我没有找到任何好的解决方案。 真的非常感谢一些帮助;)希望你明白我想要实现的目标。 值得一提的是,i =我正在处理Scenebuilder和fxml文件,所以我想要的主要是将新的.fxml场景加载到主舞台上。 所以我查看了另一个线程并尝试执行一个处理所有场景更改的VistaFramework。 但我完全不了解它,我无法让它发挥作用。 package application; import javafx.fxml.FXMLLoader; import java.io.IOException; import controllers.MainController; /** * Utility class for controlling navigation between vistas. * * All methods on the navigator are static to facilitate * simple access from anywhere in the application. */ public class VistaNavigator { /** * Convenience constants […]

如何将fx控制器与主应用程序连接

我有一个主app类和一个fxmlcontroller类,但我纠结于连接/组织(混淆了如何调用它们以及如何组织它们以使GUI连接业务逻辑)业务逻辑和GUI ….可以请一些人告诉我调用以下函数的顺序,或者可以帮助我如何调用它们…. 主要课程 public void Main() //constructor public static void main() // our main public void start() //I don’t know what it is, what purpose it has // and where should be called //Note: In main function there is a call as following launch(args); //please explain about it 和 fxmlController类 public void initialize() //I don’t […]