我想用在哈斯克爾程序itemDoubleClicked(QTreeWidgetItem*,int)
信號我寫,我現在用qtHaskell的GUI。要連接的功能我在做其他地方執行以下操作:如何使用`itemDoubleClicked(QTreeWidgetItem *,INT)`信號qtHaskell
dummyWidget <- myQWidget
connectSlot object signal dummyWidget "customSlot()" $ f
哪裏object
一些QWidget
和signal
是代表信號的字符串,如"triggered()"
和f
是我希望在發送signale時調用的函數。 API中的的connectSlot
定義是:
class Qcs x where
connectSlot :: QObject a -> String -> QObject b -> String -> x -> IO()
其中Qcs
的實例是:
Qcs()
Qcs (QObject c -> String -> IO())
Qcs (QObject c -> Object d -> IO())
Qcs (QObject c -> Bool -> IO())
Qcs (QObject c -> Int -> IO())
Qcs (QObject c -> IO())
Qcs (QObject c -> OpenGLVersionFlag -> IO())
傳遞的第一參數被認爲是在QObject
其中我使用的信號。正如你所看到的,沒有例子f
,連接到信號的功能,可以有兩個進一步的參數來接收QWidget
和信號發送的整數。有沒有辦法將該信號連接到自定義功能?
qtHaskell幾乎沒有使用。我知道沒有示例應用程序。爲什麼不使用gtk2hs或wxHaskell - 有更多的文檔。 – 2010-06-07 17:06:18
嗯,我喜歡Qt,而且有人必須是我想的第一個。直到我想使用這個信號的時候,它運行得非常好。如果沒有解決方案,我想如果必須的話,我會使用gtk2hs。 – nano 2010-06-07 17:10:42
@唐斯圖爾特,的確,如果任何人試圖使用qtHaskell的人建議切換到gtk2hs,qtHaskell將保持未使用:) @nano,我建議你問作者,也許他能夠提供幫助。 – 2010-06-10 09:56:58