我对Gtk2Hs有问题,我想设置一个可激活的cellRenderer。为此,我需要使用以下方法将其属性cellMode设置为CellRendererModeActivatable:
set render [ cellMode:= CellRendererModeActivatable ]但是我在编译时有以下错误
Not in scope: data constructor `CellRendererModeActivatable'我在我的上使用了Gtk2Hs 0.12.3和GHC7.4.1。
我查看了是否存在构造函数(在文档的正确版本中)并且.它执行。
我试图解释加载模块
import Graphics.UI.Gtk.ModelView.CellRenderer但是编译错误保持不变。
你知道错误是从哪里来的吗?
发布于 2015-02-01 12:40:39
这看起来像是一个老Haskell库中的bug :从它的源代码中看
module Graphics.UI.Gtk.ModelView.CellRenderer (
-- snip
CellRendererMode,以上不是导出构造函数。较新的版本如下:
module Graphics.UI.Gtk.ModelView.CellRenderer (
-- snip
CellRendererMode(..),您可以尝试将Haskell库更新为更新版本。这应该能解决问题。
Alternative.即使在旧版本中,该类型也有一个Enum实例,因此,作为一种快速而肮脏的解决方法,您可以使用toEnum 1 :: CellRendererMode而不是构造函数。
data CellRendererMode = CellRendererModeInert -- 0
| CellRendererModeActivatable -- 1
| CellRendererModeEditable -- 2
deriving (Enum,Eq)https://stackoverflow.com/questions/28262747
复制相似问题