使用rhino的JavaAdapter的示例

kis*_*ore 4 java scripting rhino adapter

有人能为我提供一个如何使用Rhino的java适配器在java脚本中扩展java类的示例吗?

Dag*_*bit 6

对于别人谁可能会遇到这样,有一个体面的例子在这里(笔者用它来扩展awt.Canvas).

var smileyCanvas = new JavaAdapter(awt.Canvas, {
   paint: function (g) {
       var size = this.getSize();
       var d = Math.min(size.width, size.height);
       var ed = d / 20;
       var x = (size.width - d) / 2;
       var y = (size.height - d) / 2;
       // draw head (color already set to foreground)
       g.fillOval(x, y, d, d);
       g.setColor(awt.Color.black);
       g.drawOval(x, y, d, d);
       // draw eyes
       g.fillOval(x+d/3-(ed/2), y+d/3-(ed/2), ed, ed);
       g.fillOval(x+(2*(d/3))-(ed/2), y+d/3-(ed/2), ed, ed);
       //draw mouth
       g.drawArc(x+d/4, y+2*(d/5), d/2, d/3, 0, -180);
   }
});
Run Code Online (Sandbox Code Playgroud)

有关MDN更多信息,包括简要说明和调用语法示例.