我试图在IntelliJ Idea IDE中创建一个JavaFX应用程序,但我收到编译错误,说:
java:包javafx.application不存在.
我已将Project SDK和Project Language Level更改为Java 8,重新加载项目但它没有帮助.然后我检查了设置中是否启用了JavaFX插件.
在Google和StackOverflow上的搜索没有给我更多关于错误的想法.提前感谢您的帮助.
PS我在archlinux OS上使用IntelliJ Idea 14.0和java8.1.0_25.
我在去年对JavaFX做了一些研究,甚至用它构建了一些基本的桌面应用程序.
它被描述为用于创建RIA(富Internet应用程序).
http://en.wikipedia.org/wiki/Javafx
但它真的可以通过网络浏览器部署吗?我只通过可执行的JAR文件部署它.
通过Web浏览器部署有多容易?它有用吗?有任何人对此有经验吗?
http://docs.oracle.com/javafx/2/deployment/deployment_toolkit.htm
我现在遇到了JavaFX的一个小问题.我试图在我的代码中进行文件选择,我可以指向FOLDER而不是文件.目前我没有解决方案.你知道一个解决方法(除了从swing使用JFileChooser)吗?
非常感谢提前的答案
编辑:我现在已经得到了答案,试图测试它,但我忘了提到JavaFX的版本.它是最新的2.0.3稳定版,几天前发布(但最初的非beta 2.0和2.0.1也有此问题)
我有这个常见问题,因为它似乎是.重置后,我的表视图不会刷新我的项目.我检查了数据,这是新的数据.
我从互联网尝试了多种解决方案但没有成功.
无法重置所有列,因为它添加了一个空的额外(不知道原因)和调整大小只是破坏.
我的表格不可编辑.新数据已更改.
如果我更改项目的顺序并且行更改(:|),则刷新数据.
我只是没有想法.
目前刷新代码非常简单.
ObservableList<User> data = FXCollections.observableArrayList(User.getResellers());
reseller_table.setItems(data);
Run Code Online (Sandbox Code Playgroud)
新数据再次正确.当我选择tableView时,它返回新的正确Item.
我有一个ID history类型为的元素TableView.如果我有实例,我怎样才能找到并访问这个对象Scene scene?
我想知道是否有可能检测到JavaFX 2中的双击?如何 ?
我想在点击和双击之间进行不同的事件.
谢谢
我无法让IntellJ识别JavaFX包.使用OpenJDK 11的新JavaFX项目,在尝试构建项目时,IntelliJ无法识别JavaFX包.
我是openjfx:javafx-base-11从Maven回购中导入的.
我已经查看了其他问题,解决方案似乎包括检查字节码是否处于正确的级别(我的是),以及项目语言是否正确(我的是).
有人有主意吗?
编辑:
错误:
javafx.scene.text.Text和javafx.scene.control.Label有什么区别?
文件说:
但Label类有一个方法"setText"和"textProperty",因此是可编辑的.
我在选择menuItem时关闭当前场景并打开另一个场景时遇到问题.我的主要阶段编码如下:
public void start(Stage primaryStage) throws Exception {
primaryStage.setTitle("Shop Management");
FXMLLoader myLoader = new FXMLLoader(getClass().getResource("cartHomePage.fxml"));
Pane myPane = (Pane) myLoader.load();
CartHomePageUI controller = (CartHomePageUI) myLoader.getController();
controller.setPrevStage(primaryStage);
Scene myScene = new Scene(myPane);
primaryStage.setScene(myScene);
primaryStage.show();
}
Run Code Online (Sandbox Code Playgroud)
程序执行后,将转到cartHomePage.fxml.从那里,我可以选择在选择菜单项时创建产品或创建类别.这是我的行动事件:
Stage prevStage;
public void setPrevStage(Stage stage){
this.prevStage = stage;
}
public void gotoCreateCategory(ActionEvent event) throws IOException {
Stage stage = new Stage();
stage.setTitle("Shop Management");
FXMLLoader myLoader = new FXMLLoader(getClass().getResource("createCategory.fxml"));
Pane myPane = (Pane) myLoader.load();
Scene scene = new Scene(myPane);
stage.setScene(scene);
prevStage.close();
setPrevStage(stage);
stage.show();
}
//Method …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Eclipse Kepler运行一些JavaFX代码,并在Linux机器上安装了e(fx)clipse插件,使用:
java version "1.7.0_21"
OpenJDK Runtime Environment (IcedTea 2.3.9) (7u21-2.3.9-5)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
Run Code Online (Sandbox Code Playgroud)
我的理解是,尽管自JDK 7u6版本以来JavaFX已包含在标准JDK中,但JavaFX运行时JAR文件jfxrt.jar暂时不在Java运行时路径中,直到JavaFX与其他Java基础结构之间的进一步测试为止.已经完成.因此,在创建新的Java项目时,必须手动将其添加到项目构建路径库中.
我一直在以下两个目录中寻找那个jar而没有成功:
/usr/lib/jvm/java-7-openjdk-common/jre/lib/
/usr/lib/jvm/java-7-openjdk-amd64/lib
Run Code Online (Sandbox Code Playgroud)
我应该在哪里寻找它?