将JavaFX与Python结合

ldg*_*ldg 4 python java jython

我想知道是否可以使用JavaFX设计GUI,然后再结合一些Python代码(例如,使用JavaFX创建按钮,然后在Python中编写处理程序代码以提供某些功能)。

JavaFX非常适合设计一个非常好的GUI,我需要Python来控制机器人(这些库仅在Python中可用)。

我在网上浏览了一下,发现了Jython,但是我不明白它是否允许我使用这些第三方Python库。

有没有人有好的建议或我可以看的任何资料?任何信息,将不胜感激。

先感谢您。

dav*_*les 5

是的,您可以使用Python(Jython)编写JavaFX UI:

#!/usr/bin/env jython
'''
"Hello, World!" in Jython and JavaFX

Roughly based on this: http://docs.oracle.com/javafx/2/get_started/hello_world.htm
'''

import sys

from javafx.application import Application

class HelloWorld(Application):

    @classmethod
    def main(cls, args):
        HelloWorld.launch(cls, args)

    def start(self, primaryStage):
        primaryStage.setTitle('Hello World!')

        from javafx.scene import Scene
        from javafx.scene.layout import StackPane
        primaryStage.setScene(Scene(StackPane(), 320, 240))
        primaryStage.show()

if __name__ == '__main__':
    HelloWorld.main(sys.argv)
Run Code Online (Sandbox Code Playgroud)

那很容易。我在做

您还可以用Java编写JavaFX UI,并使用诸如对象工厂之类的控件将控制权分配给Python(Jython)代码。此处的更多信息:http : //www.jython.org/jythonbook/en/1.0/JythonAndJavaIntegration.html#using-jython-within-java-applications

  • 这里的问题是,虽然 Jython 是一个绝妙的主意,但它的用户群很小,没有 v3 的迹象,而且该项目的负责人给人的印象是一个小集团:甚至没有论坛,只有一个邮件列表!我已经使用过它并且它有效......但除非奇迹发生,否则你将永远学习一项利基技能。 (2认同)