【问题标题】:WxHaskell thinks my strings are 1 character longWxHaskell 认为我的字符串是 1 个字符长
【发布时间】:2011-10-31 04:50:29
【问题描述】:

每当我在 WxHaskell 中使用字符串时,它都会认为该字符串是一个字符(它只显示第一个字符)。它只在使用 WxHaskell 函数时发生,而不是像 putStrLn 这样的函数。

例如,此代码中发生的错误

module Main where
import Graphics.UI.WX

main = start hello
hello = do f <- frame [text := "Hello"]
           quit <- button f [text := "quit", on command := close f]
           set f [layout := widget quit]

这不会发生在这个程序中:

module Main where

main = putStrLn "hello"

【问题讨论】:

  • 在运行这个程序时,我得到一个标题为“Hello”的表单,带有一个标记为“quit”的按钮。
  • 这就是我寻求帮助的原因。我看不出有什么问题。我尝试重新安装,但没有成功。

标签: haskell wxwidgets


【解决方案1】:

不久前我有过这种行为。原来是一个unicode问题。使用某种 unicode 标志重新编译,IIRC。

【讨论】:

  • 这听起来很可能。如果解释为以零结尾的 UTF-8,小端 UTF-16 中的英文字母看起来像一个 1 字符的字符串。
  • 你知道是哪个标志吗?
  • 我应该说我正在使用 GHC。
  • 喂?你知道是哪一面旗帜吗?
猜你喜欢
  • 2012-01-11
  • 2018-07-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-11
  • 2021-05-26
  • 1970-01-01
相关资源
最近更新 更多