How to make a GUI in Julia?

前端 未结 3 2040
青春惊慌失措
青春惊慌失措 2021-01-30 14:23

I\'m new at programming in Julia and I need to create a GUI. I\'ve been looking for information and I can\'t find anything useful. I tried to search information in the Julia off

相关标签:
3条回答
  • 2021-01-30 14:42

    This is quite a generic question, but I'll try and lay out the environment so that you can make an informed decision based on your needs.

    • If you are developing you code within an [Jupyter/IJulia] notebook, and need very simple interaction, such as slider to change some input values, the Interact package is the easiest thing to get started with.
    • To develop full fledged web UIs, take a look at Escher. Inspired by the Elm, it provides a functional library of UI components. Interactive web UIs are created in 100% Julia. There is no differentiation in code between the client and server sides. The framework handles all of that.
    • Another web framework worth looking at is Genie, which based on the traditional MVC design pattern. It also includes an ORM. An example of an application written in Genie is this listing of Julia packages: http://genieframework.com/packages
    • If you want to create cross platform desktop apps, but want to work with web technologies (i.e. HTML/CSS/Javascript), use Blink. This is a Julia wrapper around the Electron. You could potentially write an Escher application, and wrap in in Blink.jl to create a desktop app.
    • To create desktop UI applications using the Gtk library, use the Gtk.jl package in Julia. If you are familiar with the Gtk API, it is easy to get started. Note that sometimes it can get complicated to install all the Cairo related dependencies, so be prepared to troubleshoot this.
    • And last, but not the least, the venerable Tk framework has a wrapper in Julia. The UI's created using TK are sometimes considered ugly compared with modern aesthetics, but sometimes this is the quickest way to get a window up.
    0 讨论(0)
  • 2021-01-30 14:54

    There is a new package called Genie. It is a web framework comparable with Django in python. You can create web ui using Genie. Until now (Aug. 2017), the package is functional with some nice demos, the documentation is not quite complete though.

    0 讨论(0)
  • 2021-01-30 14:55

    QML.jl https://github.com/barche/QML.jl

    The QML.jl package enables using the QML markup language from the Qt library to build graphical user interfaces for Julia programs. The package follows the recommended Qt practices and promotes separation between the GUI code and application logic. All user-facing code is pure Julia and QML, no C++ knowledge is required to use the package.

    0 讨论(0)
提交回复
热议问题