易截截图软件、单文件、免安装、纯绿色、仅160KB

Java代码调用JavaFX的例子


1. 用ScriptEngineManager类。这是基于JSR-223规范的java脚本API( scripting API)。可以在java程序中运行一些脚本,如 JavaFX script, javascript等。
  2. 通过JavaFX reflection API。这是JavaFX提供的反射API,几乎可以调用所有的JavaFX类。
  3. 先用JavaFX类实现一个Java的interface,然后Java程序可以通过这个interface来调用JavaFX的功能。这中间的interface起了个桥梁的作用。
  第三种方法应该是比较“正规”而且“优美”的调用方式。但是也有一点不足:程序代码的入口必须从JavaFX启动。这是因为JavaFX程序比较容易生成JavaFX类的实例,从而可以供Java方使用。可是我们有时会碰到一些特定的情况,需要从Java端启动代码。例如,如果你已经有了一个较完整的Java程序,你需要用调用JavaFX的某些功能,这时候较好的方法是把Java作为程序的入口。为了解决这个问题,把第2和第3种方法作了融合,大家可以看看下面的例子。纯Java代码调用JavaFX的例子 
  下一步是创建JavaFX类MyChart来实现这个interface:  
   
  在代码中,这3句是创建JavaFX类javatest.MyChart实例,
  Context context = FXLocal.getContext(); FXClassType instance = context.findClass("javatest.MyChart"); ObjectValue obj = (ObjectValue)instance.newInstance();
  而一下这句则是把JavaFX实例转化为Java可用的对象:
  JavaInterface ji = (JavaInterface)obj.asObject();
  如果你用的是NetBeans IDE, 你可以在项目属性中把javatest.JavaTest类设为主类(Main class)(即启动类)。编译之后会生成一个javatest.jar文件。程序运行的结果如图:  
  在命令行中可以采用以下方式: javafx -jar javatest.jar
  实际上,可以用纯Java的方式来启动程序,只要把JavaFX的运行环境带上即可,如:JavaFX程序例子、教程
  java -Djava.library.path="" -classpath "" -jar javatest.jar
  因为JavaFX需要的jar文件很多,因此这种“最纯”的java方法使用起来比较麻烦。我觉得还是用javafx命令简洁些, 而且javafx就是上述java命令的封装而已。 


相关文档:

Java基本数据类型的运算

【主题】  Java基本数据类型的运算
【关键字】java 基本数据类型
【问题描述】请看如果一段代码,如果不在eclipse里运行,请写出输出结果
                  public static void main(String[] args) {
   &n ......

JAVA操作文件(创建、删除、复制、剪切)

package fileTest;
import java.io.*;
public class FileOperate {
   public FileOperate() {
   }
  
   public static void main(String args[]){
     //  newFolder("D:/100");
       moveFile("e:/978 ......

java递归实现汉诺塔

/*
 * 汉诺塔,从第1个柱子借助第2根柱子移动到第3根
 */
public class TowerOfHano {
 
    private int totle;//总共盘子数目
    public TowerOfHano(int totle){
       this.totle=totle;
    }
  &nb ......

java 和 C# 通用加密解密

java 代码
package util;
import java.io.UnsupportedEncodingException;
import dao.socket.OperType;
public class Encrpt {
 private String key;
 public Encrpt() {
  this("sitow");
 }
 public Encrpt(String key) {
  this.key = key;
 }
 private ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号