如何在ncurses中实现SIGWINCH处理程序?

时间:2014-12-12 02:22:18

标签: signals ncurses window-resize

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

1 个答案:

答案 0 :(得分:0)

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