【问题标题】:onExpose function deprecatedonExpose 函数已弃用
【发布时间】:2016-03-20 13:39:40
【问题描述】:

我正在使用 Gtk2Hs 构建一个在窗口中绘制一些图片的 GUI。我使用函数onExpose 将暴露事件连接到重绘函数。

onExpose canvas $ \_ -> do
    refreshArea canvas ... 
    return True

一切正常,但在阅读 Gtk2Hs 文档时,我看到该功能已被弃用,并将在 Gtk2Hs 的下一版本中消失。

你知道如何替换onExpose函数来连接expose事件和我的函数长期兼容吗?

【问题讨论】:

  • 您能否提供一个链接到标记为已弃用的文档? onExpose 存在于 gtk 包中,但 gtk3 使用 exposeEvent 代替。我在文档中没有看到任何弃用通知。
  • 啊,整个部分都已弃用,我从未注意到这一点。通常使用DEPRECATED pragma。无论如何,exposeEvent 是要走的路。

标签: haskell events gtk gtk2hs


【解决方案1】:

您应该使用new event handling API。特别是您应该为exposeEvent 安装一个处理程序,如下所示:

on canvas exposeEvent $ do
  -- do rendering here...
  return True

gtkgtk3 包都提供相同的 API。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-01
    • 1970-01-01
    相关资源
    最近更新 更多