我在Windows XP上使用“Hello World”测试wxHaskell:http://www.haskell.org/haskellwiki/WxHaskell/Quick_start
但是当它在我的机器上运行时,所有文本都不会显示。 例如,“退出”只会显示“Q”。
任何想法?
答案 0 :(得分:2)
您需要确保用于构建wxhaskell的wxWidgets启用了Unicode支持。我想你可以通过运行wx-config --libs --unicode来检查。
我认为正在发生的是wxWidgets期待简单的8位字符,但是接收宽32位字符。零被解释为空字符,即字符串终止符。启用Unicode支持为您提供了一个接受宽字符的wxWidgets。我不完全确定这个版本的故事是非常准确的,但我知道Unicode wxWidgets解决了这个问题。
在大多数Linux发行版中,我想,wxWidgets包已经支持Unicode了。
在MacOS X上,捆绑的wxWidgets确实支持Unicode,但遗憾的是缺少与事件处理相关的一些必要功能。获得有效wxWidgets的最简单方法是通过Homebrew(brew update; brew install wxmac)。
我从未在Windows上尝试wxhaskell,但其他人已经尝试过。