5
main :: IO()
main = runCurses $ do
setEcho False
w <- defaultWindow
canvas <- newWindow 19 19 0 0
panel <- newPanel canvas
updateWindow canvas $ do
drawString "Hello world!"
render
waitFor w (\ev -> ev == EventCharacter 'q' || ev == EventCharacter 'Q')
waitFor :: Window -> (Event -> Bool) -> Curses()
waitFor w p = loop where
loop = do
ev <- getEvent w Nothing
case ev of
Nothing -> loop
Just ev' -> unless (p ev') loop
हैलो। यह ncurses पैकेज का थोड़ा संशोधित उदाहरण है। समस्या यह है कि कुछ भी प्रदर्शित नहीं होता है। सी एपीआई में, जैसा कि मुझे याद है, मुझे स्वतंत्र रूप से प्रत्येक विंडो को रीफ्रेश करना होगा। लेकिन हास्केल केवल render
प्रदान करता है। मैं कहाँ गलत हूँ? मैं कुछ चलने योग्य विजेट चाहता हूँ।हास्केल ncurses
वह कार्य कहां से आता है? मुझे UI.Curses लाइब्रेरी में इसके बारे में एक भी शब्द नहीं दिख रहा है और जीएचसीआई का ': i' विकल्प इसके बारे में कुछ भी नहीं जानता है ... – Sventimir
मुझे लगता है कि ओपी का मतलब UI.Curses.Panel में' refreshPanels' था। http://hackage.haskell.org/package/ncurses-0.1.0.2/docs/UI-NCurses-Panel.html – joom
@ जूम अगर आपको लगता है कि उत्तर गलत है (किसी भी कारण से, यह टाइपो या कुछ और हो) - इसे एक डाउनवोट करें और एक सही पोस्ट करें। – vaxquis