zap*_*lla 5 model-view-controller controller javafx fxml scenebuilder
我喜欢 JavaFX 和 SceneBuilder,但是当它们不在同一个文件夹中时,我无法弄清楚如何让 SceneBuilder 将我的 FXML 视图与它们的 Java 控制器链接起来。我只想拥有这个文件夹结构:
package
|-- model
|-- view
| |--someElementView.fxml
| \--anotherElementView.fxml
\-- control
|--someElementController.java
\--anotherElementController.java
Run Code Online (Sandbox Code Playgroud)
相反,如果我有这个我想避免的文件夹结构,我只能让 SceneBuilder 识别我的控制器:
package
|-- model
\-- view
|--someElementView.fxml
|--anotherElementView.fxml
|--someElementController.java
\--anotherElementController.java
Run Code Online (Sandbox Code Playgroud)
发生的情况是,当 FXML 和 java 文件都在同一个文件夹中时,SceneBuilder 会检测到它们并显示一个带有 java 控制器(即“package.view.someElementController”和“package.view.anotherElementController”)的下拉列表供我使用从中选择,一切都很好。
如果我有一个文件夹结构的项目,控制器在一个单独的文件夹中,SceneBuilder 不会为我提供任何分配控制器类的选项。如果我只是在控制器文本字段中键入它(即“package.control.someElementController”或“package.control.someElementController”),它仍然不会选择 java 控制器中定义的 @FXML 变量。
这是场景生成器中的错误还是我以错误的方式处理问题?我总是将控制器和视图放在不同的文件夹中,由于这是一个大项目,我想保持整洁。
| 归档时间: |
|
| 查看次数: |
4225 次 |
| 最近记录: |