【问题标题】:How to implement SIGWINCH handler in ncurses?如何在 ncurses 中实现 SIGWINCH 处理程序?
【发布时间】:2015-02-10 16:54:44
【问题描述】:

如果我定义自己的 SIGWINCH 信号处理程序,getmaxyx 将不起作用(即它不会报告更新的值)。如果我调用 endwin() 它将起作用,但这会导致闪烁(例如,在启动 ncurses 之前显示屏幕)。 有没有办法避免调用 endwin() 或至少避免上述闪烁? 请注意,默认信号处理程序(与检查 KEY_RESIZE 结合使用)有效,但我试图通过重复调用 getch 来避免轮询。

【问题讨论】:

    标签: signals ncurses window-resize


    【解决方案1】:

    您可能需要确保调用的是由 ncurses 设置的旧信号处理程序。此处理程序设置 getmaxyx 返回的值。

    【讨论】:

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