QtRuby是否适用于Qt 5?

ico*_*ast 17 ruby qt qtruby qt5

我在网上可以找到关于QtRuby的所有内容都使用Qt 4,但Qt的当前版本是5.这仅仅是文档没有赶上现实的问题,Qt 5可以在QtRuby上运行得很好吗?

如果你断言是这种情况(Qt5不受支持),那么请用证据备份你的断言.

bog*_*ogl 7

QtRuby

Qtruby和korundum现在都没有维护多年了.要获得qtruby的维护版本,请将qtbindings安装为ruby gem.

Qtbindings主页:https://github.com/ryanmelt/qtbindings/

有关支持Qt5的讨论,另请参阅https://github.com/ryanmelt/qtbindings/issues/131.

红宝石QML

Ruby-qmlRuby的QML/Qt Quick包装器.它提供了QML和Ruby之间的绑定,使您可以使用Ruby的Qt5基于Quick的GUI.

与QtRuby相比,Ruby-QML提供的绑定更加精简.特别是没有直接访问Qt类的方法.从QtRuby来的时候,这可能首先似乎是一个缺点.

在学习使用Ruby-QML时,很快发现优势超过了限制:

  • QML和JS极大地补充了UI的静态和动态方面的描述和建模
  • QML/JS的用户社区非常庞大.找到示例或帮助解决QML/JS问题比在微小的QT/Ruby社区中更容易.
  • Ruby-qml上的示例非常完整,可以演示入门所需的构造.
  • JS可以用作Ruby和Qt之间的灵活"粘合逻辑".


lpa*_*app 5

QtRuby暂时只支持Qt 4.希望它会很快改变,但在写这篇文章的时候,这似乎是现实.

最后一次发布是在两年半前发生的.这可以在这里看到:

http://rubyforge.org/projects/korundum/

如您所见,这也是Qt 4版本,正如其名称所示:qt4-qtruby-2.2.0.

这些信息也来自他们过时的KDE Wiki:

http://techbase.kde.org/Development/Languages/Ruby

如果这仍然不足以证明,您可以自己查看代码,看它实际上并没有绑定在主要Qt变体中添加的Qt 5类.

ls解压缩最新的tarball后,这是一个快速的:

lpapp ~/Downloads/qt4-qtruby-2.2.0/qtruby/src/lib $ ls
CMakeLists.txt  Qt  Qt.rb  Qt3.rb  Qt4.rb
Run Code Online (Sandbox Code Playgroud)