虽然Racket允许用户创建GUI应用程序(甚至是游戏),但我想知道它是否适合以Things或OmniOutliner的方式发布视觉上的商业应用程序。这样的应用程序是原生的还是看起来像一个不属于平台的尴尬的继子?例如,Ubuntu上的Gnome应用程序无缝融入平台,即使有些是用Ruby或Python编写的。
Racket可以将其关闭,如果是这样,有人能指出我的例子吗?我正在尝试确定Racket的创建方式 - 从视觉角度来看 - 商业品质的应用程序。如果没有这个,就不能轻易用它来制作销售应用程序,这似乎会减少后端语言和学术用途。
答案 0 :(得分:7)
也许你可以从SirMail获得灵感?
在Windows上,Racket将使用本机Windows API。 在OS X上,它将在Mac OS X上使用Cocoa,在Linux上使用Gtk。
This gallery是在Linux上制作的;这是a similar gallery on OS X。
答案 1 :(得分:5)
我所知道的最好的例子是你用Racket获得的Dr. Racket IDE。它运行在多个平台上。它包括完整的源代码。
答案 2 :(得分:3)
编写Racket GUI是为了生成在Windows,OS X和Linux上运行的程序,而无需更改代码中的单行。
检查事物和OmniOutliner我看到应用程序只是OS X.
这意味着他们使用OS X特定的GUI元素 - 因此必须得出的结论是,如果您坚持使用racket/gui
,就不能像那样生成完美的界面。
然而,有一线希望。 Racket包含一个Object C FFI,因此您可以直接使用OS X特定的GUI元素。由于您对编写仅限OS X的应用程序感兴趣(我认为),因此您拥有比操作系统无关的GUI库更多的余地。
作为将OS X特定GUI元素嵌入到Racket程序中的一个示例,我将向您介绍将WebKit嵌入到Racket中的项目:https://github.com/shekari/racket-webkit
答案 3 :(得分:2)
不是一个非常令人印象深刻的GUI,但这适合"最终用户"问题的一面: 关于Ubuntu的Towers game。 (source code)
最终用户"更少对于Racket应用程序GUI designer(Windows上的旧屏幕截图)。